2022-12-30 3431
通常情况下,url在末尾处是否加上斜杠“/”,对用户访问是没有太大影响的,大多数的Web 服务器均能正确解析,在传统意义上说,url末尾是没有反斜杠的,有没有反斜杠的意义在于该 url 是指向一个文件还是一个目录,举个例子:
https://blog.lingruofeng.com/ls/
https://blog.lingruofeng.com/ls
url末尾带斜杠 / 的是指向目录/ls/,不带的是文件/ls,是两个不同的地址,一般来说,索引页面(如文章列表或分类)作为网站目录,而内容页面作为文件。
对于服务器来说,如果访问目录,则会根据规则访问该目录下的默认文件(index.html、index.htm、index.php之类)。如:访问/theme/服务器会寻找/theme/index.html文件,而访问/theme服务器则会寻找/theme文件,如果没有查询到该目录下的文件时,有可能导致web服务器不能正确解析而出现返回404 错误,这时就要对链接进行定向处理让目录统一加上斜杠访问。
zblog网站目录链接统一加斜杠的方法:
1.Nginx:
if (!-f $request_filename){ rewrite ^/([^\.]+[^/])$ $scheme://$host/$1$2/ permanent; } if (-f $request_filename/index.html){ rewrite (.*) $1/index.html break; } if (-f $request_filename/index.php){ rewrite (.*) $1/index.php; } if (!-f $request_filename){ rewrite (.*) /index.php; }
2.Apache .htaccess:
RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([^\.]+[^/])$ /$1/ [L,R=301] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L]
在规则中加上以上代码即可给目录自动加上斜杠访问,防止出现404错误问题。
本文链接:https://blog.lingruofeng.com/seo/47.html
版权声明:本站部分素材来自网络整理,如侵犯了您的合法权益,请联系我们删除!
扫码二维码
获取最新动态
个人博客