【发布时间】:2018-05-29 17:37:25
【问题描述】:
我刚刚用 nginx 配置了我的 Debian 8 服务器。我可以浏览html文件。我使用let's encrypt,它可以成功运行,还可以自动将http重定向到https。
不起作用的是PHP。还有一个简单的info.php 文件,其中包含
<?php
phpinfo();
?>
不工作。
在浏览器客户端我的错误信息是:
404 未找到 nginx/1.6.2
Nginx 的错误日志显示如下:
2018/05/29 19:22:57 [error] 1879#0: *1592 open() "/usr/share/nginx/html/info.php" 失败(2:没有这样的文件或目录),客户端:ip_address,服务器:,请求:“GET /info.php HTTP/1.1”,主机:“域”
我的nginx配置是:
server {
listen 80 default_server;
listen [::]:80 default_server;
# SSL configuration
server_name my-server.de www.my-server.de;
return 301 https://$server_name$request_uri;
root /var/www/html;
index index.php index.html index.htm index.nginx-debian.html;
location / {
try_files $uri $uri/ =404;
}
location ~ /.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php5-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
server {
listen 443 ssl default_server;
listen [::]:443 ssl default_server;
include snippets/ssl-my-server.de.conf;
include snippets/ssl-params.conf;
}
即使我将info.php 移动到/usr/share/nginx/html,客户端浏览器也只会下载info.php 文件。
我完成了this 指南中的所有步骤。但它仍然无法正常工作。那么如何解决呢?
【问题讨论】:
-
我当然做了
-
你在更改 nginx 配置和 php-fpm 后是否重启了 web 服务器?确保你应该给
/var/run/php5-fpm.sock777权限 -
我也试过了:同样的问题