[英]Symfony2 - Rewrite url to add www prefixwith existing .htacess file
Symfony2核心配置隨附以下.htacess文件:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app.php [QSA,L]
</IfModule>
我了解這將從瀏覽器的網址中刪除app.php。 我想添加以下重寫規則以添加www。 每當用戶輸入不帶www的域名時,都訪問我的網站。 :
RewriteCond %{HTTP_HOST} ^valutao\.com$ [NC]
RewriteRule ^(.*)$ http://www.valutao.com/$1 [L,R=301]
所以現在我有了以下.htacess文件:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app.php [QSA,L]
RewriteCond %{HTTP_HOST} ^valutao\.com$ [NC]
RewriteRule ^(.*)$ http://www.valutao.com/$1 [L,R=301]
</IfModule>
我的問題是app.php將再次出現。 看來我的規則只是隱藏了基本配置。 這是當我輸入valutao.com時URL中顯示的示例: http ://www.valutao.com/app.php
有人知道如何解決該問題。 不幸的是,我對重寫規則只有基本的了解。
感謝幫助
您只需要更改順序(應先重寫www重寫)。
我還要減少對域名的依賴:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app.php [QSA,L]
</IfModule>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.