在 Ubuntu 12.04 上的 nginx 上启用 PHP 的最简单方法是什么?
最佳解决方案是要求最少工作的解决方案,理想情况下只需安装软件包:)
pap*_*hou 142
以下方法将让您在 Ubuntu 12.04 上快速入门:
安装依赖:
sudo apt-get install php5-common php5-cli php5-fpm
安装 nginx:
sudo apt-get install nginx
启动nginx:
sudo service nginx start
测试它是否正常工作(应该看到“Welcome to nginx!”)
sudo service nginx stop
在您的 nginx 站点配置 (/etc/nginx/sites-available/default) 中,修改 server {} 部分中的行
index index.html index.htm到index index.php index.html index.htm。
取消注释 server {} 部分中以
listen 对于 ipv4 / ipv6 两者。
向下滚动到它所说的位置location ~ \.php {并取消注释行,使其看起来像这样:
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
}
Run Code Online (Sandbox Code Playgroud)
sudo service php5-fpm restart
sudo service nginx restart
您的默认 Web 根目录位于 /usr/share/nginx/www(根据配置文件)。(看root /usr/share/nginx/www;
(注:为Ubuntu 12.10或更新版本,您将需要更换fastcgi_pass 127.0.0.1:9000;这一行,使其工作:fastcgi_pass unix:/var/run/php5-fpm.sock;)
oHo*_*oHo 49
编辑:正如Matt Browne所指出的,您可能对这篇最近的帖子感兴趣:
How To Install Linux, Nginx, MySQL, PHP (LEMP stack) in Ubuntu 16.04
该papashou的回答是老的Ubuntu 12.04是正确的。从 Ubuntu 12.10 开始,配置有点不同。这是我所做的:
安装
sudo apt-get install nginx php5-fpm
Run Code Online (Sandbox Code Playgroud)
启用 PHP
取消注释配置文件中的以下几行 /etc/nginx/sites-available/default
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
# NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
# # With php5-cgi alone:
# fastcgi_pass 127.0.0.1:9000;
# With php5-fpm:
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
Run Code Online (Sandbox Code Playgroud)
启动(或重启)
sudo service php5-fpm restart
sudo service nginx restart
Run Code Online (Sandbox Code Playgroud)
测试 nginx
打开此链接http://localhost应显示“欢迎使用 nginx!”
测试 php
创建一个php文件:
目标路径是输出
awk -F' |;' '/^[^#]*root/ {print $2}' /etc/nginx/sites-available/default
Run Code Online (Sandbox Code Playgroud)
例如 /usr/share/nginx/www
写一个info.php文件:
echo '<?php phpinfo(); ?>' | \
sudo tee /usr/share/nginx/www/info.php
Run Code Online (Sandbox Code Playgroud)
或作为单线
echo '<?php phpinfo(); ?>' | \
sudo tee "$(awk -F' |;' '/^[^#]*root/ {print $2}' /etc/nginx/sites-available/default)/info.php"
Run Code Online (Sandbox Code Playgroud)打开http://localhost/info.php应该显示PHP信息页面。
| 归档时间: |
|
| 查看次数: |
368497 次 |
| 最近记录: |