2010-10-17 109 views
1

我只是想了解.htaccess如何工作以及處理它的正確方式,我遇到了一個問題。 這裏是我的.htaccess文件的一部分:.htaccess,規則中的衝突

RewriteEngine on 
RewriteRule ^(.*)/css/(.*)$ /css/$2 
RewriteRule ^(.*)/img/(.*)$ /img/$2 
RewriteRule ^(.*)/js/(.*)$ /js/$2 

一切都看起來很好,並已工作確定,直到我將嘗試使用,我複製到JS目錄TinyMCE的。它包含很多不同的子文件夾,包括img子文件夾,並且由於我的規則RewriteRule ^(.*)/img/(.*)$ /img/$2它不能正常工作。我知道我可以重命名TinyMCE中的文件夾,但我認爲我沒有正確處理.htaccess。 請幫助我。

+0

第一個'(。*)'通常包含什麼?一種語言代碼? – 2010-10-17 18:46:11

+0

就像這樣「http://stackoverflow.com」。所以只是網站的名稱 – andrii 2010-10-17 18:53:24

回答

2

您可以匹配一個文件夾(允許除/之外的每個字符),而不是匹配規則中的任何字符。這將確保深嵌套文件夾(例如modules/tinymce/js/)不會與en/js/衝突。

RewriteEngine on 
RewriteRule ^([^/]*)/css/(.*)$ /css/$2 
RewriteRule ^([^/]*)/img/(.*)$ /img/$2 
RewriteRule ^([^/]*)/js/(.*)$ /js/$2 
+0

這正是我需要的!謝謝! – andrii 2010-10-17 18:56:12