晓夏

新手菜鸟Linux学习之路

不怕从零开始,只怕从未启程

Nginx配置——如果页面或目录不存在将直接跳转至网站首页

浏览量:688

 前几天公司新版上线,要求如果输入不存在的网址,网站将跳转至首页,现将这块的实现方法贴出来,本人新手,大神勿喷!


vim /usr/local/nginx/conf/nginx.conf    #编辑nginx配置文件
fastcgi_intercept_errors on;            #添加此行在配置文件的http {中
vim /usr/local/nginx/conf/test.conf    #由于我在nginx.conf中使用了include参数引用了test.conf文件,这步看个人配置,如果未引用include参数,直接在server中配置即可。而我为了以后方便管理则将server写入了test.conf文件中

 将以下内容添加进配置文件server中的location下

location ~*\.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css)$ {   #由于我做的是nginx+tomcat动静分离所以只添加在处理静态页面的location中。
        expires  30d;                #缓存30天
        error_page 405 =200 $uri;    #由于nginx默认不支持post方式,所以需要加上此行
        if (!-e $request_filename) {        #-e是判断目录或文件是否存在,这里意思是判断目录或文件是否不存在
                rewrite ^ https://test.guoxin-linux.com;    #如果不存在,直接跳转到网站首页,这个链接是网站首页
        }
    }


好了,到此就配置完成了,重新加载下nginx,清空缓存后访问即可!

分享:

支付宝

微信