如题:
nginx中就一个server,所有的域名配置都一样,通过程序区分,每个域名都是一个独立的站点,想让每个域名404时都显示自己对应的404页面,nginx下不知如何配置实现
server
server { ... server_name a.com b.cn d.org ....; # 配置了很多域名 ... error_page 404 /404.html; }
你把下面这个挪到http作用域里面就行了, 不要每个server里面都写一个error_page 404 /404.html;
遇到这种问题,你应该去看文档:Syntax: error_page code ... [=[response]] uri;Default: —Context: http, server, location, if in location
context表示这个error_page语法的作用域, 说明可以放到http里面。
试试map
//context http
map $http_host $page { default 404.html; .com 404.com.html; .cn 404.cn.html; }
//context server
error_page $page;
你把下面这个挪到http作用域里面就行了, 不要每个server里面都写一个
error_page 404 /404.html;
遇到这种问题,你应该去看文档:
Syntax: error_page code ... [=[response]] uri;
Default: —
Context: http, server, location, if in location
context表示这个error_page语法的作用域, 说明可以放到http里面。
试试map
//context http
//context server