nginx PHP 7.2 安装
Posted
技术标签:
【中文标题】nginx PHP 7.2 安装【英文标题】:nginx PHP 7.2 Install 【发布时间】:2019-05-19 12:21:06 【问题描述】:我在我的 ubuntu 服务器上安装了 php 7.2 以升级我的 PHP。我运行了这些命令来更新我的 php 版本:
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get -y install unzip zip nginx php7.2 php7.2-mysql php7.2-fpm
但是当我运行 php.info 页面时,它仍然显示我的旧版本的 php 正在运行。
经过一番研究,我想我必须编辑我的/etc/nginx/sites-available/mySiteName
但我不确定在此位置为我刚刚安装的新 php 更改什么:
location ~ .php$
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass unix:/var/run/php7-fpm.seekadventure.net.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
【问题讨论】:
看来您的旧 PHP 版本是使用/var/run/php7-fpm.seekadventure.net.sock
的版本。需要把fastcgi_pass
改成php7.2fpm写的socket文件
@Phil 我在哪里可以找到 php7.2 fpm 编写的路径?
在我的服务器(PHP 7.0)上,它定义在/etc/php/7.0/fpm/pool.d/www.conf
~ listen = /run/php/php7.0-fpm.sock
【参考方案1】:
首先检查PHP7.2-FPM是否正在运行,如果没有,则启动它:
sudo service php7.2-fpm status
sudo service php7.2-fpm start # (if the service isn't running already)
然后转到/etc/php/7.2/fpm/pool.d/www.conf
。您应该看到 PHP7.2-fpm(进程管理器)正在侦听位于 listen = /run/php/php7.2-fpm.sock
的套接字
然后将fastcgi_pass unix:/var/run/php7-fpm.seekadventure.net.sock;
替换为fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
最后重启nginx
和PHP7.2-fpm
:
sudo service nginx reload
sudo service php7.2-fpm restart
【讨论】:
当我尝试运行我的网站时,这给了我一个 http 错误 500。我觉得我很亲密 打开/var/log/nginx/error.log
...你看到了什么?
您的脚本似乎有问题。运行php.info
,让我们确定你的PHP-FPM版本已经改变了。
好。我会建议你接受答案。我们可以在聊天室中讨论您失败的脚本,或者您可以创建一个新问题,以便其他贡献者参与进来。
请参阅此处:***.com/questions/14395239/… 以获取失败的脚本。以上是关于nginx PHP 7.2 安装的主要内容,如果未能解决你的问题,请参考以下文章
Centos7编译安装nginx1.15+MariaDB10.3+php-7.2
在 Nginx 中使用 php 7.0 安装 PhpMyadmin 4.7.2,访问被拒绝
CentOS 7.2 下编译安装PHP7.0.10+MySQL5.7.14+Nginx1.10.1的方法