我有一个简单的托管帐户,文件夹结构如下:
/ (web root)
|
|-domain1
|-domain2
|-domain3
|
...
由于正在进行一些服务器迁移,我需要一个指向 Web 根目录的真实域名,不管有domain0.com
没有www
index.php
我需要一个 .htaccess 文件,当你访问时强制所有访问页面http://domain0.com/
例如,你将无法domain1's
通过加载来呈现网站http://domain0.com/domain1/
,而是被迫转到http://domain0.com/index.php
我尝试过自己编写,但错误的重定向不断导致服务器崩溃。有什么帮助吗?
答案1
您自己的重定向很可能以递归方式重定向到 index.php。您需要阻止该脚本的规则,以便它不会在该页面请求上运行,例如:
RewriteCond %{HTTP_HOST} ^(www\.)?domain0\.com$
RewriteCond %{REQUEST_URI} !=/index.php
RewriteRule ^ /index.php [L,R]
这应该放在任何冲突的 RewriteCond/Rule 之上,这样它们就不会干扰重定向。
子目录中的任何 .htaccess 文件都会默认删除此规则,并且不会执行重定向。要修复这些问题,您必须再次向它们添加规则,或将它们设置为从父 .htaccess 文件继承,例如:
RewriteOptions inherit