nginx custom error page 502 with css and image files

后端 未结 3 611
执笔经年
执笔经年 2021-01-05 01:26

I\'m trying to add a custom error page for 503. I added these lines to server conf in nginx.conf file:

error_page 500 502 503 504 /50x.html;
location = /50x.h         


        
3条回答
  •  天命终不由人
    2021-01-05 02:13

    The reason that your image/css is not shown/loaded, is because you're using the internal directive. The internal directive specifies that a given location can only be used for internal requests, and is not available or accessible from the outside (i.e. http://mysite/errorPages/500.html). Thus, a 404 error on its turn is given for these files.

    A few workarounds are:

    1. Remove the internal directive

      error_page 500 502 503 504 /50x.html;
      location = /50x.html {
          root  /home/username/sites/myProject/current/errorPages;
      }
      
    2. Use css inline styles for your error pages. This however won't work for your images, or other files that are linked to your page.
    3. Place the css and image files outside of the errorPages folder, and refer to them in your html code, with a relative path, starting from the root of your website.

提交回复
热议问题