2011-02-10 136 views
3

我已經正確配置了我的網站,每個業務從維護查詢字符串mod_rewrite的

mywonderfulwebsite.com/ 文件夾1/任何的URL .PHP

重新路由

HTTP:// folder1中 .mywonderfulwebsite.com/任何-URL-AS-以上 .PHP

問題是:很多時候,外部網站鏈接的頁面與GET參數,例如

mywonderfulwebsite.com/folder1/whatever-url.php* trackingToken = 1 *

所以,問題嗎?是如何使在GET參數mod_rewrite的傳球給 「rewrited」 的網址,是這樣的:

folder1.mywonderfulwebsite.com/whatever-url-as-above.php* trackingToken = 1 *

目前,我做了以下內容:

<VirtualHost *> 
    ServerName mywonderfulwebsite.com 
    ServerAlias www.mywonderfulwebsite.com 
    DocumentRoot /var/www/mywonderfulwebsite/ 
    DirectoryIndex index.html 

    <Directory /> 
     allow from all 
     Options +FollowSymlinks -Indexes 
    </Directory> 

    RewriteEngine On 
    RewriteRule ^/folder1/(.*)?$ http://folder1.mywonderfulwebsite.com/$1&%{QUERY_STRING} [L,R=301] 
</VirtualHost> 

這件作品的htaccess的是可怕的:例如,試圖訪問這個網址:

www.mywonderfulwebsite.com/folder1/ atextfile。 TXT

重定向到

folder1.mywonderfulwebsite.com/ atextfile.txt &

事實上,mod_rewrite的追加後&

我該如何解決這個問題? 如何正確重定向到正確的(也有GET參數)url?

非常感謝

+0

來自問號上的部分稱爲**查詢字符串**,** GET **是HTTP方法。 – 2011-02-10 16:52:11

+0

你說得對,php中$ _GET太多了:)謝謝你的精確度 – Array 2011-02-10 17:36:48

回答

5

就在[QSA]標誌添加到您的其他標誌有[Q] uery [S]特林[A]自動ppended。

[L,R=301,QSA]