2017-07-18 180 views
1

尽管我尽了最大努力,但似乎无法在网上找到答案。从URL中删除文件扩展名

我最近设置与StackCP托管,我有一个域通过GoDaddy。

我想从我的链接中删除.html扩展名。我希望site.com/terms将您带到site.com/terms.html。我读过不少,到目前为止,我已经试过这

RewriteEngine on 

Options +MultiViews 
RewriteEngine on 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^/]+)/?$ /$1.html [NC, L] 

我放在这在我的.htaccess文件在根将以index.html和terms.html任何帮助表示赞赏。

回答

1

将此文件保留在.htaccess文件中,用于从url中删除.html扩展名。

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

这就是我需要的吗?因为在我的.htaccess中,它似乎没有做任何事情。我是否需要将{REQUEST_FILENAME}更改为文件的名称? –

+0

实际上,它确实似乎在工作,几乎,问题似乎是,当它重定向到terms.html时,它会添加尾部/并且正在打断链接。 –

+1

是的,不需要做任何事情只需将上面的代码放入.htaccess中,它就会从url中删除.html扩展名。 删除尾部/形成URL添加下面的行 'RewriteRule ^(。*)$/$ 1/[R = 301,L]'在上述代码的末尾。希望它能起作用。 –