在Debian 7.3上安装Nginx和php5 fpm时出现问题
我在一个虚拟机中安装了Debian 7.3,我正在这个虚拟机上练习安装Nginx和php5 fpm。我给Nginx分配了一个手动端口在Debian 7.3上安装Nginx和php5 fpm时出现问题,php,nginx,debian,Php,Nginx,Debian,我在一个虚拟机中安装了Debian 7.3,我正在这个虚拟机上练习安装Nginx和php5 fpm。我给Nginx分配了一个手动端口:8080,指向/var/www/获取数据,在该目录中有一个index.html和info.php文件 my Nginx的配置文件位于/etc/Nginx/conf.d/default.conf,如下所示: server { listen 8080; root /var/www; index index.php index.html i
:8080
,指向/var/www/
获取数据,在该目录中有一个index.html
和info.php
文件
my Nginx的配置文件位于/etc/Nginx/conf.d/default.conf
,如下所示:
server {
listen 8080;
root /var/www;
index index.php index.html index.htm;
server_name localhost;
location / {
try_files $uri $uri/ /index.html;
}
location /doc/ {
alias /usr/share/doc/;
autoindex on;
allow 127.0.0.1;
allow ::1;
deny all;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/www;
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass 127.0.0.1:9000;
#fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}
我试过用两种方法更改fastcgi\u通行证
:
fastcgi_pass 127.0.0.1:9000;
以及:
fastcgi_pass unix:/var/run/php5-fpm.sock;
在我的/etc/php5/fpm/pool.d/www.conf
文件中,我有以下配置:
[www]
user = www-data
group = www-data
listen = 127.0.0.1:9000
;listen = /var/run/php5-fpm.sock
在这里,我还取消了Nginx default.conf文件中要匹配的行的注释
在我的php.ini
文件中,我对其进行了编辑,以便按照我所看到的大多数指南的要求显示cgi.fix\u pathinfo=0
当我尝试加载nginx时,它运行正常。当我尝试运行php5 fpm时,会发生以下情况:
root@debianx86:/# /etc/init.d/php5-fpm status
[FAIL] php5-fpm is not running ... failed!
root@debianx86:/# /etc/init.d/php5-fpm reload
[ ok ] Reloading PHP5 FastCGI Process Manager: php5-fpm.
root@debianx86:/# /etc/init.d/php5-fpm restart
[FAIL] Restarting PHP5 FastCGI Process Manager: php5-fpm failed!
root@debianx86:/# /etc/init.d/php5-fpm start
root@debianx86:/# /etc/init.d/php5-fpm status
[FAIL] php5-fpm is not running ... failed!
root@debianx86:/#
然后,我打开虚拟机上的任何浏览器,并将它们指向127.0.0.1:8080
或localhost:8080
,然后我得到了定制的index.html
加载,它可以正常工作!因此,我随后尝试加载info.php
文件,得到一个404notfound-nginx/1.4.4
我不明白我做错了什么。这一切有什么我遗漏的吗
我也从sudo-apt-get-y安装nginx
和sudo-apt-get-y安装php5-fpm安装nginx。他们所需的任何依赖项都将与此一起安装
有没有一个脚本可以让我在新安装的Debian 7.3上运行,有人可以帮我正确地安装它,并进行所有的修改,这样nginx和php5 fpm就可以启动并运行了?我查阅了很多网站的说明,除了默认网站
和启用的网站
,我似乎在做他们所做的一切,因为这两个文件夹对我来说都不存在,我不想这样运行我的虚拟主机。我将使用default.conf文件中列出的它们自己的服务器运行它们
编辑:我甚至试着在上关注这篇文章,但仍然不起作用
编辑#2:我也做了chown-R www-data:www-data/var/www
,以确保用户和组匹配www.conf
文件中的信息。我还尝试将其更改回原始的root:root
规范。仍然没有。我想可能已经在使用端口9000,因此php5 fpm无法与该端口绑定,无法启动
在fpm池设置中,将端口9000的行与sock文件的行交换,然后尝试像以前一样启动php5 fpm,如果它可以工作,那么您所需要的就是更新nginx配置,将代理传递到sock文件而不是端口。我已经尝试了两种方法,但仍然不起作用。我测试了端口9000以查看是否有任何内容-无内容:-(sudo service php5 fpm status是怎么说的?)你在开始两种配置后试过运行它吗?我给出了相同的结果。我发现如果我先安装mySQL,然后是Nginx,然后是php5 fpm,它在第四次神奇地工作了?我觉得很奇怪,所以我清除了mySQL,它仍然工作?太困惑了。我将为此编写一个完全可安装的脚本。我在Debian 6上自动安装的LEMP上看到了一些东西。我将为Debian 7升级它,并将其放在Github上,这样就不会再出现这种情况。