对运维这边不了解,一般网站访问,为了简单,使用不带 www 访问,例如:
www.baidu.com 直接通过 baidu.com 进行访问
所以,自己的网站也这样访问。偶然发现,不带www 和 带www,完全登录了2个不同的账号,才觉得异常,搜索下,才了解到区别。
一般处理这个,需要将 '不带www' 301重定向到 '带www':
apache:
RewriteCond %{HTTP_HOST} example.org
RewriteRule (.*) http://www.example.org$1
nginx:
// 方法1:
// nginx 官方说明:This is a wrong, cumbersome, and ineffective way(这是一种错误,麻烦,无效的方式!)
server {
listen 80;
server_name www.example.org example.org;
if ($http_host = example.org) {
rewrite (.*) http://www.example.org$1;
}
...
}
// 方法2:
// nginx 官方推荐
server {
listen 80;
server_name example.org;
return 301 http://www.example.org$request_uri;
}
server {
listen 80;
server_name www.example.org;
...
}
参考文章:
https://blog.csdn.net/qingjiaoforever/article/details/51393528
http://nginx.org/en/docs/http/converting_rewrite_rules.html
nginx 301 将不带www域名,重定向到www域名
最新推荐文章于 2023-11-02 11:30:41 发布