繁体   English   中英

将http重定向到https,将www重定向到非www,并在一次重定向中删除最后一个斜杠

[英]Redirect http to https, www to non-www and remove last slash in one redirect

是否可以将http重定向到https,将www重定向到非www并在一个htaccess重定向中删除最后一个斜杠,并且它可以是seo友好的?

我有这个:

RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=301]

而且我不知道如何添加到此重定向中以删除最后一个斜杠。

您可以将此代码用于单个重定向,以处理所有3种情况:

RewriteEngine On

## Unless directory, remove trailing slash
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^(.+)/$
RewriteRule ^ %1 [L,E=DELSLASH:1]

# perform redirect for 1. www removal, 2. trailing / removal and 3. http->https
RewriteCond %{ENV:REDIRECT_DELSLASH} =1 [OR]
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=301]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM