我有一系列mod_rewrite指令(下面顯示爲代碼1),通過自定義PHP應用程序運行每個服務器請求。需要mod_rewrite條件和規則,以1虛擬主機上的「.org」替換「.com」
代碼1
Options +FollowSymLinks
RewriteEngine on
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /app/core.php [L,NC,QSA]
之前,我在mod_rewrites的最後一步,我需要改變,以mydomain.com任何請求mydomain.org。下面的代碼2顯示了我的想法,但它不起作用。該請求給我500內部服務器錯誤。
代碼2
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^mydomain\.com$
RewriteRule^http://mydomain.org%{REQUEST_URI}
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /app/core.php [L,NC,QSA]
有人可以建議一下嗎?謝謝
感謝@Chronial。根據你陳述的方式,你的假設是正確的。因此,沒有指令的整個snipit這個樣子: '選項+的FollowSymLinks RewriteEngine敘述 上 的RewriteCond%{HTTP_HOST}^MYDOMAIN \ .COM $ [NC] 的RewriteCond%{HTTP_HOST}^$ 重寫規則^(*!。 )$ http://mydomain.org/$1 [R = permanent,L] RewriteBase/ RewriteCond%{REQUEST_FILENAME}!-f RewriteRule ^(。*)$ /app/core.php [L,NC,QSA] ' –
@Chronial ...我似乎無法將我的評論格式化爲可讀代碼,因此請查看我的修訂指令的下一個答案,並告訴我是否應該使用該解決方案。 –
正如我所說的,你必須在** RewriteBase命令之後放置我的代碼**。更新我的答案以包含完整的代碼。 – Chronial