簡體   English   中英

.htaccess重定向到https和www。 如果啟用

[英].htaccess redirect to https and www. if enabled

我想以一種可以執行以下兩項操作的方式配置.htaccess文件:

  • 務必確保www. 被附加(即使對於子域名也是如此: www.sub.example.com )。
  • 可選地添加https://如果已啟用)。

我最好(如果可能)希望按照一個重寫規則來執行此操作,目前我有:

RewriteEngine On

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

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]

那么,如何讓shttps://可選在同一重寫?

您可以使用以下規則通過一次重定向將httpsnon-httpsnon-www請求重定向到www

RewriteEngine on


RewriteCond %{HTTP_HOST} !^www\.
RewriteCond %{HTTPS}s on(s)|offs()
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [NE,L,R]

這是在執行302臨時重定向。 如果要使用301永久重定向,請將R標志更改為R=301

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM