首先,首次使用nginx的用户。所以,我仍然在学习Apache和nginx的差异。nginx配置默认错误页面
我有一个nginx的股票安装。 (apt-get install nginx-full)我修改了在'/ etc/nginx/sites-enabled/default'找到的默认配置。但是,错误页面不起作用。我的docroot是/ server/www,我的错误页面位于目录/ server/errors /中。以下是我的配置。
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
root /server/www;
index index.html;
server_name website.com;
location/{
try_files $uri $uri/ /index.html;
}
error_page 403 404 405 /40x.html;
location /40x.html {
root /server/errors;
internal;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /server/errors;
internal;
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}
所有应该生成403页或404页的页面,只需加载index.html文件即可。我相信有些事情可能发生在500个错误,但是,这有点难以产生。
另外,如果它是相关的,我将错误页面移到docroot上面,但他们之前没有工作。我做了这个举动,因为“内部”标志似乎并没有像文档声明那样使页面成为内部页面,因为我仍然可以直接访问它们。
任何建议/你可以给的帮助将是伟大的!
我必须问,你是否在你改变设置时重新加载nginx? –
http://wiki.nginx.org/HttpCoreModule - 请阅读'订购'部分。 – Danack
是的,我在每次更改配置后都重新启动了nginx。 –