所以我有一个子域名sub1.example.com,映射到位于服务器根目录的一个目录:/ subdomains / sub1 / httpdocs /
我有另一个子域sub2.example.com,它被映射到一个不同的目录:/ subdomains / sub2 / httpdocs /
这是一个托pipe公司,不会让我改变Apache的conf文件。
我想要使用.htaccess文件来允许sub2目录中的文件处理sub2请求。 几乎就像一个符号链接。 我需要保留主机名。 因此, http://sub2.example.com/test.php将访问与http://sub1.example.com/test.php相同的文件,但主机名将被保留。
我在/subdomains/sub2/httpdocs/.htaccess中尝试了以下内容:
RewriteEngine On RewriteRule ^(。*)$ / subdomains / sub1 / httpdocs / $ 1
但我是一个越来越内部的服务器错误。
有什么build议么?
^(.*)$模式捕获总是以/开头的URL的完整path组件,因此您应该删除最后一个/从您的RewriteRule 。 这是应该如何:
RewriteEngine On RewriteRule ^(.*)$ /subdomains/sub1/httpdocs$1
或者使模式匹配除第一个/之外的所有内容:
RewriteEngine On RewriteRule ^/(.*)$ /subdomains/sub1/httpdocs/$1