2012-05-25 68 views
0

我需要將內部文件夾公開到我的網站的根網址。
所以我需要將用戶重定向到/public/
但如果您訪問site.com.htaccess RewriteCond語法

它不應該重定向我已經試過,但不能得到它的工作:

 
RewriteCond $1 !^(.*)$ 
RewriteRule ^(.*)$ /public/$1 [L] 

編輯:
例如,它應該返回/public/some-image.jpg
當您訪問site.com/some-image.jpg
否則只執行/index.php

回答

1
RewriteEngine On 
RewriteBase/
RewriteCond $1 !^public 
RewriteCond $1 !^$ 
RewriteRule ^(.*)$ /public/$1 [L] 
+0

當$ 1包含之前沒有RewriteRule捕獲$ 1反向引用中的任何內容時,$ 1包含了什麼? – Ansari

+0

不能解決我的問題,我已經編輯了問題來澄清它,謝謝 – orfaust

+1

@Ansari它似乎倒退,但mod_rewrite首先嚐試匹配正則表達式與url,然後它運行所有的rewritecond條件,然後是生成由RewriteRule的第二個參數指定的url。所以在這種情況下,$ 1將包含它之後的RewriteRule的匹配。我第一次看到它時很奇怪,但它非常強大。 – Gerben