-1

几天来我一直试图弄清楚 mod_rewrite ,我想知道你们是否有任何想法

我的主域是 siteX.com,它映射到“public_html”目录。

最近,我添加了另一个域,称为 siteY.com,并将“public_html/siteY/public_html”标记为它的根目录。

现在我试图通过将它映射到'public_html/siteX/public_html'来更改我的siteX的根目录,但是当我实现mod_rewrite时,它让用户看到的url是'http://www.siteX。 com/siteX/public_html'。我需要我的主要域自动映射到正确的目录,并使用仅查看“http://www.siteX.com”。

为了更好地说明我所指的目录。

public_html (siteX, my primary domain marks this as root directory)
    - .htaccess file
    - siteX
        -public_html (siteX i want my primarily domain to mark this as root directory)
    - siteY
        -public_html ( siteY.com marks this as root directory)

我希望我把问题说清楚了。谢谢你。

这是目前我正在使用的重写规则:

RewriteCond %{HTTP_HOST} ^(www.)?siteX.com [NC]
RewriteRule ^$ http://www.siteX.com/siteX/public_html/index.php 

对于我的托管公司,我相信 mod_rewrite 是唯一的出路

4

1 回答 1

1

当你有http://www.siteX.com作为目标的一部分时RewriteRule,它会自动重定向浏览器。就像有[R]国旗一样。我想你想要这样的东西:

RewriteCond %{HTTP_HOST} ^(www.)?siteX.com [NC]
RewriteCond %{REQUEST_URI} !^/siteX
RewriteRule ^(.*)$ /siteX/public_html/$1 [L]

在内部将主机的所有请求重写siteX.com/siteX/public_html/目录。

于 2012-07-20T15:48:29.463 回答