Skip to main content

  • First prerequirements are a working apache2 and php7.2 (Ubunti 18.04) environment.
  • Download the basic (like and the sdk ( package from the Oracle Website
  • Upload both files to your webserver, you can use WinSCP (windows) or rsync/scp (linux) for it
  • Unzip both files on server, in my case, you will get a new folder named "instantclient_12_2"
  • Create destination folder : mkdir /opt/oracle
  • Move and rename the instantclient folder: mv instantclient_12_2 /opt/oracle/instantclient
  • Change rights on folder: chown -R root:www-data /opt/oracle 
  • Check if you have the required packages for installing OCI8: apt install php7.2-dev php-pear build-essential libaio1 
  • Create necessary soft links: ln -s /opt/oracle/instantclient/ /opt/oracle/instantclient/; ln -s /opt/oracle/instantclient/ /opt/oracle/instantclient/
  • Add instant client to ld config files : echo /opt/oracle/instantclient > /etc/
  • Update Dynamic Linker Run-Time Bindings : ldconfig
  • Now install OCI8 by pecl: pecl install oci8
  • The OCI8 installation is asking you for the right folder: instantclient,/opt/oracle/instantclient
  • Add oci lib to the cli php config (console php): echo "extension =" >>/etc/php/7.2/cli/php.ini
  • Add oci lib to the apache php config: echo "extension =" >> /etc/php/7.2/apache2/php.ini
  • Set environment variables for the cli version (you will need to reboot the server after): echo "LD_LIBRARY_PATH=\"/opt/oracle/instantclient\"" >> /etc/environment echo "ORACLE_HOME=\"/opt/oracle/instantclient\"" >> /etc/environment
  • Set environement variables for the apache version: echo "export LD_LIBRARY_PATH=\"/opt/oracle/instantclient\"" >> /etc/apache2/envvars; echo "export ORACLE_HOME=\"/opt/oracle/instantclient\"" >> /etc/apache2/envvars 
  • Restart Apache: service apache2 restart or systemctl restart apache2 
  • You're done, now you can test your connection to the Oracle database



Popular posts from this blog

mplayer-gui error : Error in skin config file

After installing mplayer-gui package, I can't start it.

$ gmplayer MPlayer 1.1-4.8 (C) 2000-2012 MPlayer Team mplayer: could not connect to socket mplayer: No such file or directory Failed to open LIRC support. You will not be able to use your remote control. Error in skin config file on line 6: PNG read error in /usr/share/mplayer/skins/default/main Config file processing error with skin 'default'
After googling a bit, I found out that it was due to the png files in dir /usr/share/mplayer/skins/default. This is the default skin directory. To fix this error, I have to install ImageMagick package because I want to use the convert program to convert all of the png files to format png24. Thus, cd /usr/share/mplayer/skins/default; for FILE in *.png ; do sudo convert $FILE -define png:format=png24 $FILE ; done
Rerun gmplayer and all should be fine.
Have fun!
UPDATE (02-10-2017)

It doesn't work on Ubuntu 16.04 (xenial) but there's a workaround here.

You can update your syst…

Transparent proxy with squid 2.6

I have upgraded my squid from 2.5 STABLE13 to 2.6 STABLE18. Transparent proxy is setup differently in this version. You need this directives in squid.conf (usually in /etc or /usr/local/etc or /usr/local/squid/etc, check with your distro).

acl our_networks src
http_access allow our_networks
http_port transparent
always_direct allow all

where is your proxy server IP address.

If you have flushed your iptables, create new rule:

iptables -t nat -A PREROUTING -i eth0 -p tcp –dport 80 -j REDIRECT –to-port 3128

where 3128 is the port where squid is running.

postfix - mailbox size limit and message size limit

postfix is my MTA of choice. I use it for my mailserver because its simplicity , security and sendmail-compatible (the widely used smtp in the world but not as secure). It is also extensible by plugging other servers for various purposes (antispam, antivirus,database etc).

I had one problem with file attachment larger than 10MB. Users couldn't send it although I have setup squirrelmail (SM) to be able to attach files summed up more than 20MB and I had modified php settings as per here. The problem was not in SM setting. It was postfix. By default, attachment size that can be sent by postfix is 10MB ~ 10240000 byte. How did I know it? I looked in log file (for my system it is in /var/log/mail/errors. For other system, the file to look is /var/log/maillog). The line looked like this:

Feb 26 16:30:53 webmail postfix/sendmail[30775]: fatal: Message file too big

Open /etc/postfix/ with a text editor of choice and find message_size_limit directive an…