2012-02-03 60 views
0

我目前有一个简单的网站,有几个.htm页面,我试图用.htacess mod重写来删除.htm的扩展。Url重写行为

我有4个.htm页的文件夹,该指数环由HREF其他3,当我访问点击从www.domain.com/网址更改为www.domain.com/page.htm,它不应该隐藏的.htm链接?

是否有URL重写envolve每个页面上的文件夹?

回答

2

你应该这样做:

使用URI就像在你的索引文件www.domain.com/page

,并在您.htaccess

RewriteEngine on 
RewriteBase/
RewriteCond %{REQUEST_URI} ^/(\w+)/?$ [NC] 
RewriteRule^%1.htm [L] 
+2

出于好奇这些规则,有没有使用任何优势RewriteCond就像你拥有一个RewriteRule一样吗? – 2012-02-04 08:51:26

+0

@dambrisco您可以在URI的必需部分或完整的URI上进行匹配而不用重写。并且,在重写过程中,您可以:在目录和htaccess上下文中,在删除引导服务器到当前RewriteRule的前缀(例如“app1/index.html”或“index”)之后,模式将最初与文件系统路径匹配.html“取决于指令的定义位置)。' 使用RewriteConds将有助于保持URl重写更清洁(关于未来的重写)并且不会发生冲突。 – ThinkingMonkey 2012-02-04 11:49:56

+0

@dambrisco此外,”如果您希望匹配针对每个目录(htaccess)RewriteRule中的完整URL路径,请使用RewriteCond中的%{REQUEST_URI}变量。上述问题的 尽管没有多大作用。 – ThinkingMonkey 2012-02-04 11:51:30