删除需要在网站上输入的扩展名

时间:2015-03-16 04:27:04

标签: php html .htaccess

我已经在这里阅读了大量的线索和问题,我无法理解我的生活。

我试图这样做,当我去我的网站时,我不必输入.html来访问该页面 例如:www.yoursite.com/help而不是www.yoursite.com/help.html

我试过了:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule .* $0.html

在我的.htaccess文件中,它不起作用。

每当在网址

中尝试不使用.html时,您仍会被重定向到我的错误页面

非常感谢任何帮助!

更新:.htacess

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.html [NC,L]

ErrorDocument 400 /error.php
ErrorDocument 403 /error.php
ErrorDocument 404 /error.php
ErrorDocument 405 /error.php
ErrorDocument 408 /error.php
ErrorDocument 500 /error.php
ErrorDocument 502 /error.php
ErrorDocument 504 /error.php

2 个答案:

答案 0 :(得分:1)

试试这个

RewriteRule ^([^\.]+)$ $1.html [NC,L]

来源: http://alexcican.com/post/how-to-remove-php-html-htm-extensions-with-htaccess/

答案 1 :(得分:1)

尝试一下:

ErrorDocument 400 /error.php 
ErrorDocument 403 /error.php 
ErrorDocument 404 /error.php 
ErrorDocument 405 /error.php 
ErrorDocument 408 /error.php 
ErrorDocument 500 /error.php 
ErrorDocument 502 /error.php 
ErrorDocument 504 /error.php

RewriteEngine On 

RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule ^ /%{REQUEST_URI}.html [L]