[英]htaccess redirect all links except base url
我想將除主頁URL以外的所有鏈接從我的網站重定向到子目錄。
例:
www.example.com
應該保留為www.example.com
www.example.com/someurl
應該重定向到www.example.com/sub/someurl
www.example.com/someurl/anothermore
應該重定向到www.example.com/sub/someurl/anothermore
編輯:我當前正在子目錄上,所以當前其www.example.com/main/someurl
重定向到www.example.com/main/sub/someurl
要將所有內容重定向到/sub
子目錄(除了根目錄),您可以使用mod_rewrite在文檔根目錄的.htaccess
文件頂部執行以下操作:
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/sub/
RewriteRule !^(index\.php)?$ /sub%{REQUEST_URI} [R,L]
上面指出,如果請求不是/
(或/index.php
)並且沒有啟動/sub/
( RewriteCond
指令),則重定向到/sub/<suburl>
。
編輯:我目前正在子域上工作,因此當前將其
www.example.com/main/someurl
重定向到www.example.com/main/sub/someurl
那是一個子目錄,而不是“子域”。 (?)
如果是這種情況,請將這些指令移至/main/.htaccess
文件並將其更改為:
RewriteCond %{REQUEST_URI} !^/main/(index\.php)?$
RewriteCond %{REQUEST_URI} !^/main/sub/
RewriteRule (.*) /main/sub/$1 [R,L]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.