LiNUX安装PHP7.X
PHP版本:7.2.12
下载地址:http://cn2.php.net/get/php-7.2.12.tar.bz2/from/this/mirror
推荐(免费):PHP7
安装前准备,避免在安装PHP依赖包时报错:configure: error: mcrypt.h not found. Please reinstall libmcrypt.
添加 epel 源
centos 7.x
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
此处我将PHP 下载到 /usr/local 下,进入此目录下
tar -zxvf php7.2.12tar.gz
进入目录
cd php-7.2.12
安装PHP依赖包
yum install gcc libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel
如果依赖包安装好,就将以下整段复制编译,PHP目录到 /usr/local/php;
./configure \ --prefix=/usr/local/php \ --with-config-file-path=/etc \ --enable-fpm \ --with-fpm-user=nginx \ --with-fpm-group=nginx \ --enable-inline-optimization \ --disable-debug \ --disable-rpath \ --enable-shared \ --enable-soap \ --with-libxml-dir \ --with-xmlrpc \ --with-openssl \ --with-mcrypt \ --with-mhash \ --with-pcre-regex \ --with-sqlite3 \ --with-zlib \ --enable-bcmath \ --with-iconv \ --with-bz2 \ --enable-calendar \ --with-curl \ --with-cdb \ --enable-dom \ --enable-exif \ --enable-fileinfo \ --enable-filter \ --with-pcre-dir \ --enable-ftp \ --with-gd \ --with-openssl-dir \ --with-jpeg-dir \ --with-png-dir \ --with-zlib-dir \ --with-freetype-dir \ --enable-gd-native-ttf \ --enable-gd-jis-conv \ --with-gettext \ --with-gmp \ --with-mhash \ --enable-json \ --enable-mbstring \ --enable-mbregex \ --enable-mbregex-backtrack \ --with-libmbfl \ --with-onig \ --enable-pdo \ --with-mysqli=mysqlnd \ --with-pdo-mysql=mysqlnd \ --with-zlib-dir \ --with-pdo-sqlite \ --with-readline \ --enable-session \ --enable-shmop \ --enable-simplexml \ --enable-sockets \ --enable-sysvmsg \ --enable-sysvsem \ --enable-sysvshm \ --enable-wddx \ --with-libxml-dir \ --with-xsl \ --enable-zip \ --enable-mysqlnd-compression-support \ --with-pear \ --enable-opcache
编译并安装:
make && make install
编译完成之后,我们添加PHP命令到环境变量里
vim /etc/profile
在文件末尾加入:
PATH=$PATH:/usr/local/php/bin export PATH
要使改动立即生效执行
source /etc/profile
查看PHP 版本
php -v
这时候,nginx还是不支持php的,它需要php-fpm来处理两者的依赖关系,所以我们要胚子php-fpm
cp php.ini-production /etc/php.ini cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm chmod +x /etc/init.d/php-fpm
启动php-fpm
/etc/init.d/php-fpm start
nginx和php-fpm整合
编辑/usr/local/nginx/nginx.conf
修改如下:
红框中 “#”号去掉
添加红框中内容
修改内容,如下(找到如下开头内容)
这里我将配置文件换到我自定义的文件中去,不做以上修改;
只在文件末尾加入
client_max_body_size 200m; include vhosts/*.conf;
创建文件夹,并创建编辑 app.conf 文件
mkdir vhosts vim app.conf
编辑内容:
server { listen 80; server_name 39.105.186.95 vv.vv.com; index index.php index.html; root /home/html/angel; location ~ .*\.(php|php7)?$ { #fastcgi_pass unix:/tmp/php-cgi.sock; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.html; include /usr/local/nginx/conf/fastcgi.conf; client_max_body_size 1000m; } location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { expires 7d; } location ~ .*\.(js|css)?$ { expires 1h; } if (!-e $request_filename) { rewrite ^/index.php(.*)$ /index.php?s=$1 last; rewrite ^(.*)$ /index.php?s=$1 last; break; } }
更多相关免费学习推荐:PHP7教程
The above is the detailed content of Detailed explanation of LiNUX installation of PHP7.X. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

SublimeText3 Chinese version
Chinese version, very easy to use

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function

Atom editor mac version download
The most popular open source editor
