Without creating an article to install PHP7, I prefer to share with you this great post: How to Install PHP 7.0, Apache 2.4.17, & MySQL 5.6 on Ubuntu 15.10 & 14.
So, the following information in my article bellow are now deprecated and was only effective to the nightly version of PHP7.
1sudo nano /etc/apt/sources.list 2deb http://archive.ubuntu.com/ubuntu jessie main 3aptitude update
Add Zends PHP7 early access repo:
1echo "deb http://repos.zend.com/zend-server/early-access/php7/repos ubuntu/" >> /etc/apt/sources.list
To install PHP7 nighly build:
1apt-get update && apt-get install php7-nightly
1aptitude install apache2 apache2-mpm-worker libapache2-mod-fastcgi
Then create the file /etc/apache2/conf-available/php7-fpm.conf
with the contents:
1<IfModule mod_fastcgi.c>
2 AddHandler php7-fcgi .php
3 Action php7-fcgi /php7-fcgi
4 Alias /php7-fcgi /usr/lib/cgi-bin/php7-fcgi
5 FastCgiExternalServer /usr/lib/cgi-bin/php7-fcgi -socket /var/run/php7-fpm.sock -pass-header Authorization
6</IfModule>
Then enable the new mods and config:
1a2enmod actions fastcgi alias 2a2enconf php7-fpm 3a2dismod mpm_event 4a2enmod mpm_prefork 5service apache2 reload
1aptitude install mysql-server mysql-client
To get, build and install PHP7 from sources, you will need some tools to be installed in your linux. Use the next command to install the needed tools:
1aptitude install git make autoconf build-essential libt1-dev libgmp-dev bison re2c libxml2-dev libcurl4-openssl-dev libssl-dev libsslcommon2-dev libbz2-dev libjpeg-dev libfreetype6-dev libmcrypt-dev libmysqlclient-dev libaspell-dev
Create a temporary directory:
1mkdir ~/tmp 2cd ~/tmp
Clone sources from git repository:
1git clone https://git.php.net/repository/php-src.git
You can now build and configure your env
1cd php-src 2./buildconf 3./configure \ 4 --prefix=/usr/local/php7 \ 5 --with-config-file-path=/usr/local/etc/php7 \ 6 --localstatedir=/usr/local/var \ 7 --sysconfdir=/usr/local/etc/php7 \ 8 --enable-mbstring \ 9 --enable-zip \ 10 --enable-bcmath \ 11 --enable-pcntl \ 12 --enable-ftp \ 13 --enable-exif \ 14 --enable-calendar \ 15 --enable-sysvmsg \ 16 --enable-sysvsem \ 17 --enable-sysvshm \ 18 --enable-wddx \ 19 --with-curl \ 20 --with-mcrypt \ 21 --with-iconv \ 22 --with-gmp \ 23 --with-pspell \ 24 --with-gd \ 25 --with-jpeg-dir=/usr \ 26 --with-png-dir=/usr \ 27 --with-zlib-dir=/usr \ 28 --with-xpm-dir=/usr \ 29 --with-freetype-dir=/usr \ 30 --with-t1lib=/usr \ 31 --enable-gd-native-ttf \ 32 --enable-gd-jis-conv \ 33 --with-openssl \ 34 --with-mysql=/usr \ 35 --with-pdo-mysql=/usr \ 36 --with-pgsql=/usr \ 37 --with-pdo-pgsql=/usr \ 38 --with-firebird=/usr \ 39 --with-pdo-firebird=/usr \ 40 --with-pdo-odbc=unixODBC,/usr/ \ 41 --with-oci8=instantclient,/usr/lib/oracle/12.1/client64/lib \ 42 --with-pdo-oci=instantclient,/usr,12.1 \ 43 --with-interbase=/usr \ 44 --with-gettext=/usr \ 45 --with-zlib=/usr \ 46 --with-bz2=/usr \ 47 --with-recode=/usr \ 48 --with-mysqli=/usr/bin/mysql_config
You can now make and install sources
1make 2make test 3sudo make install
We now need to create a symlink:
1sudo ln -sf /usr/local/php7/bin/php /usr/bin/php
add to /etc/apache2/sites-enabled/000-default.conf or other vhost conf file:
1AddType application/x-httpd-php .php .phtml
1cd /usr/local/etc/php7 2sudo nano php.ini
paste the code:
1max_execution_time=600
2memory_limit=128M
3error_reporting=1
4display_errors=1
5log_errors=1
6user_ini.filename=
7realpath_cache_size=2M
8cgi.check_shebang_line=0
9
10zend_extension=opcache.so
11opcache.enable_cli=1
12opcache.save_comments=1
13opcache.fast_shutdown=1
14opcache.validate_timestamps=1
15opcache.revalidate_freq=60
16opcache.use_cwd=1
17opcache.max_accelerated_files=100000
18opcache.max_wasted_percentage=5
19opcache.memory_consumption=128
20opcache.consistency_checks=0
1ln -s /usr/include/x86_64-linux-gnu/gmp.h /usr/include/gmp.h
1aptitude install firebird2.5-dev
1aptitude install unixodbc-dev unixodbc-bin unixodbc
1aptitude install libpq-dev
© 2013-2024 All rights reserved.
Built with Next.js. Designed with in Montreal