如何配置Apache2以使用虚拟文档根目录使用单个但每主机不同的文档目录?
我的主机结构如下所示: /var/www/host1/htdocs/如何配置Apache2以使用虚拟文档根目录使用单个但每主机不同的文档目录?,apache,hosting,virtualhost,vhosts,Apache,Hosting,Virtualhost,Vhosts,我的主机结构如下所示: /var/www/host1/htdocs/ /var/www/host2/httpdocs/ /var/www/host3/public/ /var/www/host4/www/ 等等 我想通过动态设置文档目录名(整个路径的最后一个目录名)来扩展/增强以下配置: 服务器别名*.local VirtualDocumentRoot“/var/www/%-2+/” VirtualScript别名“/var/www/%-2+/” 此配置与以下URL匹配: test.loca
/var/www/host2/httpdocs/
/var/www/host3/public/
/var/www/host4/www/ 等等 我想通过动态设置文档目录名(整个路径的最后一个目录名)来扩展/增强以下配置:
服务器别名*.local
VirtualDocumentRoot“/var/www/%-2+/”
VirtualScript别名“/var/www/%-2+/”
此配置与以下URL匹配:
test.local->/var/www/test/other.test.local->/var/www/other.test/
projectname.local->/var/www/projectname/ 每个项目都有不同的公用文件夹名称。如上所述,一些项目使用
htdocs
或httpdocs
,其他项目使用public
或www
等,你明白了
我希望Apache 2自动确定现有的公用文件夹,并从确定的目录中提供资源:
test.local->/var/www/test/public/other.test.local->/var/www/other.test/htdocs/
projectname.local->/var/www/projectname/www/ 这可能吗?据我所知,Apache2没有检查目录是否存在的指令 是否有办法实现我的想法,或者是否有任何模块/模块或工具来管理这一点
非常感谢您的宝贵意见!:) 这听起来像是在寻找“大规模vhost解决方案”。我认为,这方面有专门的模块。在apache中没有直接的方法来创建这样的动态配置,因为主机配置需要在启动时进行评估!我已经深入研究了这个主题一段时间了,一般来说,批量托管主题不是问题,但更具体地说,每个vhost都有一个不同的文档文件夹名称,而不在域中附加这个文件夹名称。
<VirtualHost *:80>
ServerAlias *.local
VirtualDocumentRoot "/var/www/%-2+/"
VirtualScriptAlias "/var/www/%-2+/"
</VirtualHost>