首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >删除www并将https添加到域名。

问删除www并将https添加到域名。
EN

Stack Overflow用户
提问于 2014-08-12 08:24:10
回答 1查看 54关注 0票数 0

我希望做以下重写:

代码语言:javascript
复制
http://website.com        >  https://website.com
www.website.com           >  https://website.com
https://www.website.com   >  https://website.com

基本上,删除每个组合的www并将所有内容重定向到https。

下面是当前的.htaccess配置,它似乎解决了上面的第一种和第二种,但在第三种上却分崩离析。看不见这里缺了什么。

代码语言:javascript
复制
<IfModule mod_rewrite.c>

RewriteEngine On

# remove www if it has it
RewriteCond %{HTTP_HOST} ^www\.
RewriteRule ^(.*)$ http://website.com/$1 [L,R,QSA]

# send everything to https
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-SSL} !on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

# BEGIN WordPress
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress

</IfModule>
EN

回答 1

Stack Overflow用户

发布于 2014-08-12 08:41:54

实际上,这可以在一条规则本身中完成:

代码语言:javascript
复制
RewriteEngine On
RewriteBase /

# remove www if it has it
RewriteCond %{HTTP_HOST} ^www\. [NC,OR]
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP:X-Forwarded-SSL} !on
RewriteRule ^ https://website.com%{REQUEST_URI} [L,R=302,NE]

# BEGIN WordPress
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25259440

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档