我使用Rackspace的Cloud Sites作为webhost,对于同时使用PHP和ASP的网站,他们有一个有趣的设置。
在我们的设置中,PHP是默认技术,因此默认情况下站点运行Apache,直到它命中以.asp扩展名结尾的URL。这意味着这个网址:
www.site.com/folder/
不会自动加载:
www.site.com/folder/index.asp
.htaccess可以做同样的事情,比如这样吗?
RewriteCond %{REQUEST_FILENAME}index.asp -f
RewriteRule (.*/) $1index.asp [R=301,QSA]
在英语中,这意味着,“如果当前URI + index.asp是真实文件,则重定向到该文件。”以上不起作用;我做错了什么,或者只是不可能?
我知道这很奇怪,但正如我所说,Rackspace的设置需要它。
我正在研究的其他替代方法包括在index.asp文件的文件夹中手动创建index.php文件,这些文件将重定向到index.asp文件,但我希望尽可能避免这种情况。 :)
BTW,DirectoryIndex在这种情况下不起作用。
答案 0 :(得分:0)
我继续在每个有index.asp的文件夹中添加了index.php文件。
文件包含以下代码:
<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: index.asp");
exit();
?>
这对我们来说是一个可行的解决方案,因为我们没有很多index.asp文件。