2013-01-17 44 views
0

我想获得一个apache重写规则采取URL,返回该URL + html的阿帕奇重写添加HTML扩展

例:“www.domain.com/about”应该服务于页面的“www。 domain.com/about.html'

我已经尝试过很多的解决方案,因此我相信由于网站布局有一些复杂性。

我托管的网络解决方案,所以它的共享主机,这是一个发展的网站,所以我目前拥有的dev.domain.com指出/ htdocs中的/ dev

目录结构

-htdocs 
--(contains existing sites files) 
--.htaccess 

----dev 
------(contains dev site files) 
------.htaccess 

因此,您可以看到有一个现有的.htaccess文件可能会做某些事情,可能存在子域问题,但我不完全确定,这是我第一次使用Apache。

这里是我现有的.htaccess驻留在/ htdocs中的/ dev目录

RewriteEngine On 
RewriteBase /dev 
RewriteCond %{REQUEST_URI}.html -f [NC] 
RewriteRule^%{REQUEST_URI}.html [L] 

感谢您的帮助!

+0

你试过'RewriteBase /'吗? – Perleone

+0

是的,我尝试过'RewriteBase /'无效 – aconz2

回答

0

您正在指示Apache进行文件检查(-f),但它不知道在哪里寻找。只要改变

RewriteCond %{REQUEST_URI}.html -f [NC] 

RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI}.html -f [NC] 

这样Apache可以从你的文件系统的根目录的完全合格的路径。

+0

所以我真的认为这会起作用,而且我早些时候尝试了一些效果,但它仍然给我一个'404' – aconz2