我在底部的正則表達式有問題。我試圖通過索引文件通過所有模式除 index.php,robots.txt和任何css和js文件,但我有一個特定的路徑,我需要通過php處理js和css文件。通常情況下我的URL結構是這樣的:htaccess正則表達式 - 不遵循模式
example.com/class/function
可以說,我要處理來自下方的圖案CSS和JS文件:
example.com/view/file/ xxxxx.js/CSS
通常我會想到這段代碼工作,但它不會:
一些奇怪的原因,此代碼的工作(除去「視圖」,並加入/前(。*)):
(\w*)(?!\/file\/)\/(.*)\.(js|css)
但後來我將無法從主目錄中加載文件:
example.com/file.js
當我修改像這樣的文件,它不會再工作......(我所做的是使/可選):
(\w*)(?!\/file\/)(\/?)(.*)\.(js|css)
原來這裏是htaccess文件:
RewriteCond $1 !^(index\.php|robots\.txt|(.*)\.(js|css))
RewriteRule ^(.*)$ /index.php/$1 [L]
我沒有考慮將它們分開,但如果我想將它們組合起來,不應該(?!view/file)起作用嗎? – Dennis 2009-09-11 16:39:40
丹尼斯,我認爲湯姆海格的想法(和我)不需要負面看法,因爲它很混亂,很難判斷它是否「應該」起作用。在mod_rewrite中,有時候更容易定義你想要匹配的內容以及它應該被重寫的內容。 – bmb 2009-09-11 17:57:04