Nginx 網站定義自己的錯誤頁面

場景:

為了給用戶較好的交互和感官,我們通常需要對錯誤頁面進行友好提示。

環境介紹:

LNMP(linux(centos7.4)Nginx Mysql5.6 php7.0)


實現:

這里,我直接對nginx的子配置文件進行了相應配置,給出代碼

server {
    listen       80;
    server_name  www.xiaobudiu.top;

    charset utf-8;
    access_log  /etc/nginx/logs/access/www.xiaobudiu.top.access.log main;
    error_log   /etc/nginx/logs/error/www.xiaobudiu.top.error.log debug;

    root    /data/www;

    index  index.html index.htm index.php;

    location /favicon.ico {
            log_not_found off;
            access_log off;
    }location ~ \.php$ {
        fastcgi_pass   unix:/dev/shm/php-cgi.sock;
        fastcgi_index  index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include        fastcgi_params;
   }error_page  404 403 500 502 503 504  /404.html;

   location = /404.html {

        root   /data/errorPage;

   }location ~ /\.ht {
       deny  all;
   }
}

從上面可以看出,如果訪問我定義的server(www.xiaobudiu.top)出現404,403,500,502,503,504 錯誤時,直接nginx重寫到 location = /404.html ,在這個location中,我定義root,也就是我們自己定義的錯誤頁面所在的位置,這里是/data/errorPage,然后我們在這個路徑下vim 404.html就可以了 。

文件結構是這樣:



效果示例:

假設我在我的網站找一個不存在的頁面,就會直接返回我剛才自己定義的404.html,如圖。



注:當然,還有對nginx反向代理錯誤頁面的定義,以及nginx解析php出錯的錯誤頁面的定義,如果有這方面需求,可以參考這篇文章。https://www.cnblogs.com/paul8339/p/7389422.html


本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/282340.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/282340.shtml
英文地址,請注明出處:http://en.pswp.cn/news/282340.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Python中的變量

1、聲明變量: 1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 namewupeiqi 上述代碼聲明了一個變量,變量名為:name,變量name的值為“wupeiqi” 變量的作用: 為了方便操作,需要把這些數據分別用一個簡…

車輛調度

為什么80%的碼農都做不了架構師?>>> 車輛調度系統 大體上分為4個部分吧 1.調度車輛:你調度的時候需要的車輛,方便給你運輸啥的 2.調度任務:你為啥會調度車輛,肯定要有一個任務 3.客戶:那這個…

threeJS 實用

texture可以是圖片和canvas,并且最終是作為material的map屬性來渲染。texture的構造函數中有一個參數image(圖片,canvas),使用圖片的時候需要使用imageLoader加載到圖片產生一個image對象,然后設置成為text…

C#爬蟲-Selenium ChromeDriver 設置代理

背景開發爬蟲程序,如果不做代理設置,本機的外網IP很容易被網站封掉,導致不能持續進行數據抓取。而Selenium作為動態網頁抓取的利器,我們有必要了解一下,如何對它進行代理設置,并正常訪問網頁。解決辦法1、首…

Nginx 設置,設置已經解析的域名,在nginx中沒有定義相應server時的默認訪問

場景介紹: 因為業務需求,我們需要對域名進行解析,這里我對域名進行了如下解析但是,因為業務需求,我可能在nginx中只定義了kuman.xiaobudiu.top 和 www.xiaobudiu.top 的相應server的子配置文件,如圖那么問題…

第一次作業--四則運算題目生成程序

功能簡介: 1.獲取用戶所要生成算術的個數 2.隨機生成算式和式子的答案 3.生成算式和答案的txt文件來保存算式和答案 思路: 生成里的運算數分為三個部分,整數,如果是分數就再分為分子和分母,然后為這三個部分創建數組&a…

ABP vNext微服務架構詳細教程(補充篇)——單層模板(上)訂正篇

簡介在之前的《ABP vNext微服務架構詳細教程》系列中,我們已經構建了完整的微服務架構實例,但是在開發過程中,我們會發現每個基礎服務都包含10個類庫,這是給予DDD四層架構下ABP的實現方案,但是實際使用中我們會發現&am…

MyBatis Plus輕松實現數據讀寫分離

在現代應用程序中,數據庫是至關重要的組成部分。為了提高性能和可用性,常見的數據庫優化策略之一是將數據庫讀和寫操作分離,以降低數據庫服務器的負載。MyBatis Plus是一個流行的Java持久化框架,它提供了讀寫分離的支持,結合Spring Boot 集成多數據源的特性可以幫助你輕松…

javascript基礎修煉(4)——UMD規范的代碼推演

javascript基礎修煉(4)——UMD規范的代碼推演 1. UMD規范 地址:https://github.com/umdjs/umd UMD規范,就是所有規范里長得最丑的那個,沒有之一!!!它是為了讓模塊同時兼容AMD和CommonJs規范而出現的&#x…

Missing artifact log4j:log4j:bundle:1.2.17

為什么80%的碼農都做不了架構師?>>> maven引入log4jjar包出現Missing artifact log4j:log4j:bundle:1.2.17,解決方法是去掉bundle,其他的解決方案可以參考maven log4j.jar問題 Maven使用log4j可能會有協議上的問題 如果log4j的版…

PHPStorm 配置遠程服務器文件夾在本地windows鏡像,實現代碼自動同步(類似于Samba架構文件同步功能)

場景介紹: 這是一種類似samba架構,也和 filezillaxshell 模式相類似的代碼文件同步的模式,但是卻更加優雅,也更加方便簡潔。環境介紹: 本地windows端:編輯器phpstorm 遠程Linux端:centos&#x…

bzoj1143/2718 祭祀river(最大獨立集)

[CTSC2008]祭祀river Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 2175 Solved: 1098[Submit][Status][Discuss]Description 在遙遠的東方,有一個神秘的民族,自稱Y族。他們世代居住在水面上,奉龍王為神。每逢重大慶典, Y族…

反向ajax實現

在過去的幾年中,web開發已經發生了很大的變化。現如今,我們期望的是能夠通過web快速、動態地訪問應用。在這一新的文章系列中,我們學習如何使用反 向Ajax(Reverse Ajax)技術來開發事件驅動的web應用,以此來…

linux系統啟動流程及常見問題的解決

一、前言計算機開機是一個神秘的過程。我們只是按了開機鍵,就看到屏幕上的進度條或者一行行的輸出,直到我們到達登錄界面。然而,計算機開機又是個異常脆弱的過程,我們滿心期望的登錄界面可能并不會出現,而是一個命令行…

使用.NET開發一個屏幕OCR工具

本文將介紹使用.NET開發的一款桌面截圖 OCR 工具,軟件已開源,地址:https://github.com/sangyuxiaowu/Snipping_OCR背景因為不同地方人們的使用習慣不同,國內可能截圖更多的是使用QQ,微信等即時聊天工具提供的截圖功能。…

segnet 編譯與測試

segnet 編譯與測試參考:http://sunxg13.github.io/2015/09/10/caffe/http://m.blog.csdn.net/lemianli/article/details/76687508http://blog.h5min.cn/u010069760/article/details/75258539(注意:nakefile而非makefile.config)1、…

Linux開啟fileinfo擴展

在項目初始部署環境的時候,可能考慮的并不全面,就會少裝一些擴展,這里講解如何添加fileinfo擴展1、找到php安裝的壓縮包2、將壓縮包cp到 /data目錄下,并解壓 cp php-7.0.30.tar.gz /data cd /data tar -zxvf php-7.0.30.tar.gz…

TemplateBinding與Binding區別,以及WPF自定義控件開發的遭遇

在上一次的文章WPF OnApplyTemplate 不執行 或者執行滯后的疑惑談到怎么正確的開發自定義控件&#xff0c;我們控件的樣式中&#xff0c;屬性的綁定一般都是用TemplateBinding來完成,如下一個基本的按鈕樣式&#xff1a; <Style x:Key"SimpleButton" TargetType&q…

Layui版本的WPF開源控件庫-Layui-WPF

大家好&#xff0c;我是沙漠盡頭的狼。今天介紹一款Layui風格的WPF開源控件庫&#xff0c;倉庫信息如下&#xff1a;倉庫地址&#xff1a;https://github.com/Layui-WPF-Team/Layui-WPF倉庫截圖&#xff1a;Layui-WPF關于Layui請點擊此鏈接[1]了解&#xff0c;本文不做介紹&…

Mycat 之 通過Keepalived 實現高可用

一、系統拓撲圖 一、操作方法 參考本博客的Nginx Keepalived 實現高可用轉載于:https://blog.51cto.com/12965094/2164485