.htaccess 将动态域重定向到文件夹
Posted
技术标签:
【中文标题】.htaccess 将动态域重定向到文件夹【英文标题】:.htaccess redirect dynamic domain to folder 【发布时间】:2012-10-28 12:23:11 【问题描述】:对于本地开发,我设置了我的路由器以将所有对 *.lan 的请求重定向到我的本地 xampp 服务器。现在我必须为我想使用的每个域设置虚拟主机。这可行,但我不想为每个项目设置一个新的虚拟主机(指向相应的文件夹)并重新启动 apache。
是否可以创建一个 .htaccess 文件来“捕获”一个域,并将其重写到文件夹中,这样我就可以使用域作为文件夹名称?例如:
example1.lan 加载位于 /example1/ 的网站
example2.lan 加载位于 /example2/ 的网站
这个踏板 (Apache - Domain for localhost to access folders as http://folder.local) 做几乎相同的事情,但有一个重定向。我不想要重定向,我想要重写。
提前致谢!
【问题讨论】:
【参考方案1】:尝试将这些规则添加到文档根目录(example1 和 example2 目录所在的目录)的 htaccess 文件中:
RewriteEngine On
RewriteCond %HTTP_HOST ^(.*)\.lan$
RewriteCond %REQUEST_URI !^/%1/
RewriteRule ^(.*)$ /%1/$1 [L]
【讨论】:
感谢您的回复...我认为它必须是 $1 和 %1,但这个解决方案只给了我 500 个错误。我清除了我的主机文件并重新启动了 apache,但 500 错误仍然存在。 @Wietse 忘记条件,现在试试 嗨,乔恩,感谢您的努力,但它似乎不起作用;我仍然收到 500 错误。还有什么想法吗?以上是关于.htaccess 将动态域重定向到文件夹的主要内容,如果未能解决你的问题,请参考以下文章
.htaccess:将主域重定向到https:// www,子域重定向到https://(不带www)