簡體   English   中英

Htaccess 刪除 index.php? 來自網址

[英]Htaccess Removing index.php? from URL

當我有一個配置了 SSL 的網站時,當使用 HTTPS:// 訪問網站時一切正常,但是當我使用 HTTP 訪問網站時,我得到“index.php?” 在 URL 末尾: https://domaine.com/index.php?/

這是我的 HTACESS :

RewriteEngine on
RewriteCond $1 !^(index\.php|assets|images|js|css|uploads|favicon.png)
RewriteCond %(REQUEST_FILENAME) !-f
RewriteCond %(REQUEST_FILENAME) !-d
RewriteRule ^(.*)$ ./index.php?/$1 [L]
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

任何幫助,將不勝感激。

有你的規則是這樣的:

RewriteEngine on

RewriteCond %{THE_REQUEST} /index\.php [NC]
RewriteCond %{REQUEST_URI} ^(.*/)index\.php$ [NC]
RewriteRule ^ https://%{HTTP_HOST}%1 [L,R=301,NE]

RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]

RewriteCond $1 !^(index\.php|assets|images|js|css|uploads|favicon.png)
RewriteCond %(REQUEST_FILENAME) !-f
RewriteCond %(REQUEST_FILENAME) !-d
RewriteRule ^(.*)$ ./index.php?/$1 [L,QSA]

確保在新瀏覽器中測試它或在測試前完全清除瀏覽器緩存。

以下強制使用 https 重寫任何 http 請求。 例如,以下代碼強制對http://example.com的請求加載https://example.com 它還強制直接鏈接的資源(圖像、CSS 等)使用 https。

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]

如果這對您不起作用,請先檢查您的行尾。 從您的網絡瀏覽器復制/粘貼到文本編輯器可能無法正常工作,因此在粘貼到文本編輯器后,您應該刪除每個換行符並將其添加回(換行符 = 返回鍵)。

暫無
暫無

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

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