我目前使用的是CodeIgniter,apache伺服器
我現在想要的效果是
http://p.com/?p=1545 可以解析到 http://p.com/main/index?p=1545
一直沒寫成功,求指教下
這是我寫的:
RewriteEngine On RewriteRule ^\?p=(\w+)$ /main/index?p=$1 [QSA,PT,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L]
回複內容:
我目前使用的是CodeIgniter,apache伺服器
我現在想要的效果是
http://p.com/?p=1545 可以解析到 http://p.com/main/index?p=1545
一直沒寫成功,求指教下
這是我寫的:
RewriteEngine On RewriteRule ^\?p=(\w+)$ /main/index?p=$1 [QSA,PT,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L]
在Rewrite中預設規則收集是不帶參數的,就是問好後面的部分,所以你的需求可以轉換為這樣:
/ -> /main/index
對應的Rewrite 規則為:
RewriteEngine On RewriteRule ^/$ /main/index [QSA,PT,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L]
請測試
RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /main/index/$1 [L]