2010-06-21 80 views

回答

0

你在找什么叫做URL重写。下面是关于如何做到这一点的教程:

http://www.yourhtmlsource.com/sitemanagement/urlrewriting.html

虽然我是一个.NET的家伙,平时做这个使用ASP.NET路由引擎,我认为这会做你需要它:

重写规则^博客(/)$ /博客/ somespecificurl/

+0

这似乎没有办法。我会继续尝试。 RewriteRule^guide(/)?$/guide/college-student-laptop-guide-2010/ – 2010-06-21 01:19:56

+0

看看我的回答,希望它能解决问题。 – AriX 2010-06-21 01:25:11

0

如果没有访问服务器的配置,只是想这样做的HTML,你能做到这样?

(在http://site.com/blog/index.html的头部)

<meta HTTP-EQUIV="REFRESH" content="0;url=http://site.com/blog/somespecificurl/"> 

0是等待重定向的秒数。

+0

我该怎么做(302重定向)在.htaccess文件中?谢谢 – 2010-06-21 01:20:37

+0

哦,我很抱歉。 AriX正确回答了这个问题: RewriteRule^blog(/)?$ /blog/newarticle.html [R] – cactusbin 2010-06-21 01:30:39

1

只要你在你的Apache配置启用了mod_rewrite,你可以做一个.htaccess文件与这些内容:

RewriteEngine on 
RewriteRule ^blog(/)?$ /blog/newarticle.html [R] 

的RewriteEngine叙述线是非常重要的,因为它告诉Apache实际上关注RewriteRule命令。如果默认指定RewriteEngine on,这是不必要的,但在很多情况下,默认情况下不会指定它。 [R]意味着强制URL重写为一个新的HTTP请求,导致实际的全面重定向(这是不必要的,这取决于你在找什么)。

或者,您可以使用HTTP元刷新,它更简单,但需要在重定向发生之前加载页面,或者如果您在服务器上启用了PHP,则可以使用PHP重定向。如果是这样,请在/blog/index.php中试试这个:

<?php 
header('Location: /blog/newarticle.html'); 
?> 
+0

谢谢,但我似乎无法得到这个工作。 RewriteRule^guide(/)?$/guide/college-student-laptop-guide-2010/[R] – 2010-06-21 01:30:56

+0

即使有RewriteEngine?另外,你是否尝试基于PHP的解决方案?这有点简单。 – AriX 2010-06-21 01:35:34