加载具有不同网址的同一页面?

时间:2012-01-07 02:20:37

标签: html .htaccess redirect

我想创建一个这样的页面:

http://www.mywebsite.com/special/index.html

但/ special /文件夹中的任何内容都应该能够加载index.html页面。例如,如果你去

http://www.mywebsite.com/special/another-page.html

它仍应加载索引页,但不能更改浏览器或搜索引擎中的URL。基本上,您应该能够转到/ special /文件夹中的任何页面,保持URL与您输入的相同,但始终加载index.html页面。有什么想法吗?

404或301重定向不起作用,因为它会更改浏览器和搜索引擎中的URL ...

提前致谢!

3 个答案:

答案 0 :(得分:1)

404重定向无济于事,但自定义404处理程序会:

error404.php:

<?php
include('path/to/special/index.html');
?>

假设.html是静态页面或PHP页面。如果它是其他东西,那么你可以使用该环境的等效结构。

答案 1 :(得分:1)

使用apache映射应该是可能的。我不知道如何做到这一点,但这篇文档http://httpd.apache.org/docs/2.0/urlmapping.html可能有答案。

可以使用模式将URL映射到文件系统位置。

答案 2 :(得分:0)

如果你能够使用重写规则,我认为(未经测试)这样的东西可以在特殊目录中的.htaccess文件中运行:

RewriteRule ^.*$ index.html

您必须将特殊目录中的index.html符号链接到真正的index.html。

^.*$只意味着(行首)(任何数量的任何东西)(行尾) - 基本上是一个通配符;可能有更好的写作方式。