我正在設置Apache重寫規則來整理我的CodeIgniter URL。
This question(和許多論壇帖子等,我已經左右的地方找到)文件使用以下規則(或非常類似的東西):
RewriteEngine on
RewriteCond $1 !^(index\.php|phpinfo\.php|images|robots\.txt|sitemap\.xml\.gz|sitemap\.xml|assets)
RewriteRule ^(.*)$ /index.php/$1 [L]
我知道$ 1重寫規則是指後從(。*)中捕獲到的字符串,但是第一個$ 1(在RewriteCond後面)代表什麼?很多我見過的例子都使用類似%{REQUEST_URI}的函數作爲RewriteCond的第一個參數。
所以$ 1這兩種情況下指的是相同的值呢? –
是的。在'RewriteCond'中,它基本上是說只要$ 1不等於條件右邊列出的文件就會重寫。 – sbeliv01