0

我目前正在尝试将本地配置的域重定向到其目录。使用 htaccess 实现此目的的最佳方法是什么?

目前'localhost'重定向到/Library/WebServer/Documents/(mac OSX),我想在这个目录中创建一个htaccess文件,它将所有域引导到它的目录。

我正在寻找的示例 htaccess 代码:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.)?example.com/$ 
RewriteRule ^(.*)$ /Library/WebServer/Documents/example.com/$1 [L]

我希望有人可以帮助我,认为有一个简单的解决方法!

亲切的问候,

4

2 回答 2

1

.htaccess这是单独不可能的。您需要访问主服务器配置文件或至少修改相应的虚拟主机部分。

如果可以修改主配置文件,则可以添加任意数量的虚拟主机

如果您只允许调整虚拟主机,则必须向虚拟主机添加与ServerAlias域一样多的条目。

然后您可以为各个域添加重写规则

RewriteEngine On

# prevent endless loop
RewriteCond %{ENV:REDIRECT_STATUS} .
RewriteRule ^ - [L]

RewriteCond %{HTTP_HOST} ^(www\.)?example\.com/$ 
RewriteRule ^.*$ /Library/WebServer/Documents/example.com/$0 [L]

RewriteCond %{HTTP_HOST} ^(www\.)?domain\.com/$ 
RewriteRule ^.*$ /Library/WebServer/Documents/domain.com/$0 [L]
于 2013-03-20T17:33:09.490 回答
0

尝试这个

# get the server name from the Host: header
UseCanonicalName Off

# include the server name in the filenames used to satisfy requests
VirtualDocumentRoot /var/www/vhosts/%0/httpdocs

<Location /var/www/vhosts>
    AllowOverride All
    Options +FollowSymLinks
</Location>

然后,您可以尝试以下示例:

example.com将显示 /var/www/vhosts/example.com/httpdocs

example2.com将显示 /var/www/vhosts/example2.com/httpdocs

请记住将域添加到您的主机文件中。

资源

于 2013-03-20T14:24:51.367 回答