在我的申請,我試圖鏈接http://domain.com/auth/login
和/auth/register
到http://domain.com/?p=auth&action=$
其中$
是這樣的:http://domain.com/auth/$
Apache的mod_rewrite規則寫入
我的代碼是
RewriteEngine On
RewriteRule ^auth/(.+)$ ?p=auth&action=$1
,但現在我所有的CSS和圖像混亂up ._。
在我的申請,我試圖鏈接http://domain.com/auth/login
和/auth/register
到http://domain.com/?p=auth&action=$
其中$
是這樣的:http://domain.com/auth/$
Apache的mod_rewrite規則寫入
我的代碼是
RewriteEngine On
RewriteRule ^auth/(.+)$ ?p=auth&action=$1
,但現在我所有的CSS和圖像混亂up ._。
看起來很好,除了我會建議使用完整的網址來代替重定向。並減少與其他規則的互動,你應該添加[L]
標誌停止重寫過程與規則相匹配的請求:
RewriteEngine On
RewriteRule ^auth/(.+)$ http://domain.com/?p=auth&action=$1 [L]
和一般的提示:如果你有機會到服務器配置,然後把你的重寫規則,而不是使用.htaccess樣式重寫。這是更可靠,更易於配置:
RewriteEngine On
RewriteRule ^/auth/(.+)$ /index.php?p=auth&action=$1 [L]
(我假設你使用的文件index.php
作爲路由器,也可能是任何其他語言或:
RewriteEngine On
RewriteRule ^/auth/(.+)$ /?p=auth&action=$1 [L]
有一個稍微好一點的性能
甚至解決方案)。
查看相關部分中的所有內容,看看是否可以拼湊在一起。 –
不應該得到一個downvote – Ben