我想在.htaccess中编写一条规则以重写url,以使子域能够显示我网站中页面的内容。
例如,我希望http://subdomain.example.org/page
显示页面http://example.org/subdomain/page
的内容。
我尝试编写如下规则,但是没有用
RewriteCond %{HTTP_HOST} ^subdomain.example.org$
RewriteCond %{REQUEST_URI} !^/subdomain/
RewriteRule ^(.*)$ /subdomain/$1 [L]
RewriteCond %{HTTP_HOST} ^subdomain.example.org$ [NC]
RewriteRule ^((?!subdomain).*)$ example.org/subdomain/$1 [NC,L]
这些规则最终会引发内部服务器错误
我也尝试了最后一条规则
RewriteCond %{HTTP_HOST} subdomain.example.org
RewriteRule ^(.*)$ http://example.org/subdomain$1 [L]
但是此规则最终重定向到http://example.org/subdomain
,而不仅仅是在保留网址的同时显示页面内容。
编写规则的正确方法应该是什么?