我有一个运行
的nginx服务器my_class& d=a.test(b)
只要网址为“http://domain/not_existing_page.html”,错误页面就会很好地显示。 但是,如果它像“http://domain/subpath/not_existing_page.html”,则不会检索我的CSS和JS。
确实,在我的404.html中链接
error_page 404 /404.html;
location = /404.html {
root /usr/share/nginx/html;
internal;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
internal;
}
无效,因为浏览器会查找“http://domain/subpath/css/custom.css”。
有没有办法配置nginx,以便我的404.html总是从/?获取我的css和js?
感谢您的帮助!
答案 0 :(得分:2)
您需要使用资源的绝对路径设计错误页面,并可选择为其添加唯一的前缀,以便为它们设置正确的根路径。
示例:
在404.html中
<link href="/error-pages/css/custom.css" rel="stylesheet">
在nginx配置
中location ~ "^/error-pages" {
root /usr/share/nginx/html;
internal;
}
如果错误页面的css / js资源放在全局文档根目录中,那么使用像
这样的绝对路径就足够了<link href="/css/custom.css" rel="stylesheet">