2010-01-15 72 views
1

我想知道是否有某种方法可以更改一些简单的东西,比如htaccess文件,js文件或php文件,然后我网站上的所有网页都会显示正在建设中的页面。如果用户必须重定向,我并不十分关心,但我希望页面的原始URL能够显示在地址栏中(而不是在“正在构建”页面中),并且我希望用户被重定向在anythign else之前执行,比如JS函数,甚至页面加载。正在建设中的页面没有重定向的网站

任何帮助将不胜感激!

谢谢!

- 编辑 -

好了,我已经找到了如何将用户重定向,和它的伟大工程。现在,我唯一的问题是,我如何制作正在建设中的网页的网址,并将其显示为原始网页?我想要做的是,如果用户转到mysite.com/page.html,我希望用户被重定向到mysite.com/underconstruction.html,但我希望他们能够将mysite.com/page.html视为地址栏中的地址。有任何想法吗?我不太确定mod_rewrite。我现在正在查找一些教程,但是我只是在学习如何编辑htaccess,而且mod_rewrite似乎对初学者来说有点复杂,所以如果你对我有点麻烦,它会帮助很多。

回答

2

我们对此使用apache mod_rewrite。 它检查是否存在maintenance.html文件,并且它会提供该页面。

要打开它,我们只是做:

> mv maintenance.html.bak maintenance.html 

,并再次将其隐藏:

> mv maintenance.html maintenance.html.bak 

这里是出的httpd.conf这个:

# Check for maintenance file and redirect all requests 
RewriteCond %{DOCUMENT_ROOT}/system/maintenance.html -f 
RewriteCond %{SCRIPT_FILENAME} !maintenance.html 
RewriteRule ^.*$ /system/maintenance.html [L] 
0

的htaccess是definitley的路要走。

至少它满足了你的要求:“我希望用户在执行任何其他操作之前被重定向,比如JS函数,甚至是页面加载”。

我无法确定它是否会显示原始网址,因此您需要尝试一下。个人而言,我的整个网站是PHP,每个页面都是一个模板,其中包括header.php,css.php,menu.php和footer.php,因此一个(可能一行)更改为常见包含文件是所有我需要的。我只提到它,因为你似乎完全重新设计你的网站,并可能想考虑做类似的事情(如果你不喜欢原始PHP,看看像Smarty这样的临时系统)

相关问题