我使用Virtualmin API创建了一系列使用php的第三级域(直到这里都是正确的)。我需要一个解决方案来为这些子域中的每个子域提供相应的子目录,即
sub1.domain.com进入C:\ xampp \ htdocs \ domain_com \ subsites \ sub1;
sub2.domain.com => C:\ xampp \ htdocs \ domain_com \ subsites \ sub2。
我也应该使用Virtualmin API来做到这一点,但是用户可以看到他被重定向到的子目录,而且很糟糕。应该在子目录中将子域转换为httpd.conf中的常规解决方案,以不修改和重新启动Apache连续性。与此同时,向用户显示的URL必须保持为“sub1.domain.com/whatever_dir/user_file.php”。 我试着像这些的重写规则,以获得它:第三级域名
<VirtualHost *:80>
ServerName www.domain.com
ServeAlias *.domain.com
DocumentRoot C:/xampp/htdoc/domain_com/
Option +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.domain.com
RewriteCond %{HTTP_HOST} ^(w*).domain.com
RewriteRule ^$ subsites/%1%{REQUEST_URI}
</VirtualHost>
有了这个规则我succeded来调用“%1”目录中的所有文件。但是,如果这些文件中的任何一个调用图片或任何其他资源,则此资源的路径始终指文档根,而不是调用文件。所以该文件被正确调用,但具有错误的资源路径!
对于Alias,AliasMatch也是如此。我开始意识到Alias和RewriteRules不是实现这个目标的正确手段,但我不知道其他的。
感谢您的关注。我希望有人有一个建议。 Emanuele。
这是最简单的方法... – OSP