重写特定的主机到本地主机上的目录
问题描述:
我目前正在尝试将我的本地配置的域重定向到它的目录..什么是最好的方式来实现这个使用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]
我希望有人能帮助我,想有一个简单的办法解决这个!
亲切的问候,
答
这是不可能单独.htaccess
。您需要访问主服务器配置文件或至少修改相应的虚拟主机部分。
如果您可以修改主配置文件,您可以添加任意数量的virtual hosts。
如果只允许您调整虚拟主机,则必须为您的虚拟主机添加尽可能多的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]
答
试试这个
# 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 will show /var/www/vhosts/example2.com/httpdo cs
请记住将域添加到您的主机文件。
非常感谢!这工作:-) – user2191227 2013-03-21 08:27:50