【发布时间】:2014-01-17 20:54:06
【问题描述】:
我已经尝试了所有方法,但仍然无法在浏览器上显示错误,我使用的是 nginx、php-fpm 和 centOS 6.4
nginx.conf
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
include /etc/nginx/conf.d/*.conf;
}
这是我在 conf.d 中的 nginx 配置
server {
listen 80;
server_name localhost;
root /server/public;
index run.php;
location / {
try_files $uri $uri/ /run.php;
}
location ~ \.php$ {
fastcgi_index run.php;
fastcgi_pass 127.0.0.1:9000;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
php-fpm 配置
catch_workers_output = yes
php_flag[display_errors] = on
php_admin_flag[log_errors] = on
php.ini
display_errors = on
log_errors = on
我在启用了 NAT 的 virtualbox 上运行 CentOS 6.4,如果我从服务器内部 curl localhost 我得到正确的错误但如果我从服务器外部的浏览器访问该站点我得到一个 502 bad gateway 错误,如果我正在加载的页面没有错误一切正常,我错过了什么吗?
【问题讨论】:
-
cat您的/var/log/nginx/error.log文件并找出网络服务器在您访问系统时看到的确切错误,因为 502 通常表示网关配置不正确,而php5-fpm这通常意味着你没有fastcgi_pass-ing 到正确的路径