我在虚拟机中安装了Debian 7.3,我正在练习安装Nginx和php5-fpm。我得到了Nginx的工作,为它分配了一个:8080
的手动端口,指向/var/www/
的数据,在该目录中是index.html
和info.php
文件。
我的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_pass
:
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_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
文件,然后会看到404 Not Found - nginx/1.4.4
。
我不明白我做错了什么。这一切都有我缺少的东西吗?
我也从sudo apt-get -y install nginx
和sudo apt-get -y install php5-fpm
安装了nginx。他们需要的任何依赖项都会随之安装。
是否有一个脚本,我可以在Debian 7.3的全新安装上运行,有人已经为我正确安装它,并进行所有修改,以便nginx和php5-fpm启动并运行?我查看了许多带有说明的网站,除了default-sites
和enabled-sites
之外,我似乎做了他们所做的一切,因为这些文件夹都不存在,而我不想像那样运行我的虚拟主机。我将使用default.conf文件中列出的自己的服务器运行它们。
编辑:我甚至试过在DigitalOcean上关注这篇文章,但仍然无效。
编辑#2:我还chown -R www-data:www-data /var/www
确保用户和组与www.conf
文件中的信息匹配。我也试过将它改回原来的root:root
规范。仍然没有。
答案 0 :(得分:0)
我想也许端口9000已经被使用了,所以php5-fpm无法与该端口绑定而无法启动。