| 去官网下载php7.2安装包,选择一个结点下载:http://php.net/downloads.php
 下载:wget -ivh http://cn.php.net/distributions/php-7.2.12.tar.gz
 解压源码包:
 tar -zxf php-7.2.12.tar.gz
 安装编译php需要的依赖包:yum install gcc autoconf gcc-c++
 yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel readline readline-devel libxslt libxslt-devel
 yum install systemd-devel
 yum install openjpeg-devel
 添加www用户:创建群组:groupadd www
 创建一个用户,不允许登陆和不创主目录:useradd -s /sbin/nologin -g www -M www
 ? 编译参数: 开发环境:????--enable-phpdbg
 ????--enable-dtrace
 生产环境:
 ????--disable-phpdbg
 ????--disable-dtrace
 ./configure --prefix=/usr/local/php
 --with-config-file-path=/usr/local/php/etc
 --with-zlib-dir
 --with-freetype-dir
 --enable-mbstring
 --with-libxml-dir=/usr
 --enable-xmlreader
 --enable-xmlwriter
 --enable-soap
 --enable-calendar
 --with-curl
 --with-zlib
 --with-gd
 --with-pdo-sqlite
 --with-pdo-mysql
 --with-mysqli
 --with-mysql-sock
 --enable-mysqlnd
 --disable-rpath
 --enable-inline-optimization
 --with-bz2
 --with-zlib
 --enable-sockets
 --enable-sysvsem
 --enable-sysvshm
 --enable-pcntl
 --enable-mbregex
 --enable-exif
 --enable-bcmath
 --with-mhash
 --enable-zip
 --with-pcre-regex
 --with-jpeg-dir=/usr
 --with-png-dir=/usr
 --with-openssl
 --enable-ftp
 --with-kerberos
 --with-gettext
 --with-xmlrpc
 --with-xsl
 --enable-fpm
 --with-fpm-user=php-fpm
 --with-fpm-group=php-fpm
 --with-fpm-systemd
 --disable-fileinfo
 
 执行编译:
 make && make install
 php-ini:
 源码包里面有配置文件:
 ? ? php.ini-development? ? ?测试开发环境
 ? ? php.ini-production? ? ? ? ?生产环境
 复制一份到指定的目录下(根据自己的情况选用,自己可以对比下这两个文件的差异):cp php.ini-production /usr/local/php/etc/php.ini
 php-fpm复制一份新的php-fpm配置文件:?cd /usr/local/php/etc
 cp php-fpm.conf.default php-fpm.conf
 vim php-fpm.conf
 配置错误日志:error_log = /usr/local/php/var/php-fpm.log配置pid文件:pid = /usr/local/php/var/run/php-fpm.pid
 保存退出
 cd?/usr/local/php/etc/php-fpm.d
 cp www.conf.default? www.conf
 管理php-fpm配置:	 cd /usr/local/src/php-7.2.4cp ./sapi/fpm/php-fpm.service 到 /usr/lib/systemd/system/下
 也执行以下命令启动php-fpm服务:cp sapi/fpm/php-fpm.service /usr/local/php/bin/
 /usr/local/bin/php-fpm
 启动完毕之后,php-fpm服务默认使用9000端口,使用 netstat -tln | grep 9000 可以查看端口使用情况:
 配置开机启动php-fpm:
 systemctl enable php-fpm
 启动php-fpm:systemctl start php-fpm
 查看状态:systemctl status php-fpm
 添加环境变量:vim? /etc/profile
 在末尾追加:export PATH=$PATH:'/usr/local/php/bin/'
 保存退出。source /etc/profile
 测试:php -v
 看到php版本信息就表示已经成功了。 如果需要区分web和cli环境,可以将 /usr/local/php/etc/php.ini 复制一份,重命名为php-cli.ini
 cp /usr/local/php/etc/php.ini??/usr/local/php/etc/php-cli.ini? 需要调整配置,就在各自的配置文件中进行调整即可。 设置nginx
 nginx配置:
 server {
 listen       80;
 server_name  www.demo.com;
     #charset koi8-r;access_log  /var/logs/nginx/access.log  main;
 error_log /var/logs/nginx/error.log;
     root /wwwroot;location / {
 index  index.php;
 try_files $uri /index.php?_RW_=$uri;
 }
     #error_page  404              /404.html;     # redirect server error pages to the static page /50x.html#
 error_page   500 502 503 504  /50x.html;
 location = /50x.html {
 root   /usr/share/nginx/html;
 }
     # proxy the PHP scripts to Apache listening on 127.0.0.1:80#
 #location ~ .php$ {
 #    proxy_pass   http://127.0.0.1;
 #}
 	# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000#
 location ~ .php$ {
 root           html;
 fastcgi_pass   127.0.0.1:9000;
 fastcgi_index  index.php;
 fastcgi_param  SCRIPT_FILENAME  /wwwroot$fastcgi_script_name;
 include        fastcgi_params;
 }
     # deny access to .htaccess files,if Apache's document root# concurs with nginx's one
 #
 #location ~ /.ht {
 #    deny  all;
 #}
 }
 修改完这些保存并退出,然后重启nginx:/usr/local/nginx/nginx -s stop
 /usr/local/nginx/nginx
 或者
 /usr/local/nginx/nginx -s reload
 访问网站,如果能正常打开页面,就证明设置成功了,有些时候会遇到一些权限问题,比如我就遇到了缓存目录没有写权限,chmod 755 cache修改目录的权限,然后程序就能正常运行了。 done! (编辑:宣城站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |