apache子域重写为查询字符串

时间:2018-06-25 05:14:00

标签: apache .htaccess

我有以下.htaccess文件,当我在URL中键入http://adidas.localhost/时,不会附加'store'查询变量,但是当我添加单个字符(例如http://adidas.localhost/1)时,它将起作用非常好,但是在斜杠后没有没有任何字符,我已经尝试了所有方法,但仍无法提出解决方案,谢谢。

<IfModule mod_rewrite.c>
    Options +FollowSymLinks
    RewriteEngine On
    RewriteBase /

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d

    RewriteCond %{HTTP_HOST} ^([^\.]+)\.localhost$ [NC]
    RewriteRule ^(.*)$ http://localhost/?store=%1&uri=%{REQUEST_URI} [QSA,L]

    RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>

1 个答案:

答案 0 :(得分:1)

尝试:

<IfModule mod_rewrite.c>
    Options +FollowSymLinks
    RewriteEngine On
    RewriteBase /

    RewriteCond %{HTTP_HOST} ^([^\.]+)\.localhost$ [NC]
    RewriteRule ^(.*)$ http://localhost/?store=%1&uri=%{REQUEST_URI} [QSA,L]

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d    
    RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>