簡體   English   中英

htaccess重定向除多個文件夾和文件以外的所有文件

[英]htaccess redirect all except multiple folders and files

我一直在嘗試多種不同類型的示例,但是當嘗試添加更多文件夾和文件作為重定向的例外時,我無法使其正常工作。 我只知道這個示例可以在我的Apache localhost中運行:

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteRule  !^js($|/) http://google.com [L,R=301]
</IfModule>

所以基本上我想重定向除js,css,img文件夾和getOrder.php,getCustomer.php文件之外的所有文件,諸如此類。 在這種情況下,有人可以幫忙嗎?

我建議您添加一個“最后”規則,說“不要觸摸這些文件夾”。 然后在那之后進行重定向。

編輯:使用包裝器元素(FollowSymLink,ReWriteEngine on)更新了答案。

Options +FollowSymLinks
Options -Indexes

# These folders will not be touched.
RewriteEngine On
RewriteCond %{REQUEST_URI} "/css/" [OR]
RewriteCond %{REQUEST_URI} "/img/"
RewriteRule (.*) $1 [L]

# Then have your redirect rule
RewriteEngine On
RewriteRule  (.*) http://google.com [L,R=301]

盡管如評論中所建議,您可以對“找不到文件”進行重定向,這可能更合適? 或將重定向放置在您不希望的文件夾中; 與您也重定向到Google相比,重定向到您說“未找到”的頁面也更好。 但這就是你的電話。

暫無
暫無

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

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