使用.htaccess在url路径后面追加.html

使用.htaccess在url路径后面追加.html,html,.htaccess,url,url-rewriting,Html,.htaccess,Url,Url Rewriting,人们进入我的网站是这样的: sitename.com/brands/brandA 但这将导致404错误,因为我实际上需要他们访问这个url sitename.com/brands/brandA.html 当有人使用.htaccess文档进入sitename.com/brands/*而没有.html扩展名时,我如何在需要时自动附加.html扩展名。为什么不试试这个呢 RewriteEngine On RewriteRule ^/brands/(.*)$ /brands/$1.html [L] 你

人们进入我的网站是这样的:

sitename.com/brands/brandA

但这将导致404错误,因为我实际上需要他们访问这个url

sitename.com/brands/brandA.html


当有人使用
.htaccess
文档进入
sitename.com/brands/*
而没有.html扩展名时,我如何在需要时自动附加.html扩展名。

为什么不试试这个呢

RewriteEngine On
RewriteRule ^/brands/(.*)$ /brands/$1.html [L]

你为什么不试试这个呢

RewriteEngine On
RewriteRule ^/brands/(.*)$ /brands/$1.html [L]
您也可以将其用于:

<IfModule mod_negotiation.c>
  Options +MultiViews
</IfModule>

选项+多视图
如果收到请求,将导致404,mod_协商将考虑其他头,如
Accept
,并查找具有相同基本名称但具有适当扩展名的文件。

您也可以用于此:

<IfModule mod_negotiation.c>
  Options +MultiViews
</IfModule>

选项+多视图

如果收到请求,将导致404,mod_协商将考虑其他头,如
接受
,并查找具有相同基本名称但具有适当扩展名的文件。

如果有其他方法解决此问题,而不是使用.htaccess文档,请随意与我分享。此外,如果有其他方法可以解决这个问题,而不是使用.htaccess文档,请随意与我分享。PS:如果你在网站上发布类似的问题,你可能会有更好的机会。我将其发布在这里,因为它仍然与编程相关,所以我想这两个网站都可以。(如果我错了,请纠正我)不,我同意。我只是说,如果你的问题中出现了“Apache”这个词,专家们可能会坐在其他地方。PS:如果你把这样的问题发布在网站上,你可能会有更好的机会。我把它发布在这里,因为它仍然与编程相关,所以我想这两个网站都可以。(如果我错了,请纠正我)不,我同意。只是说,如果“Apache”一词出现在你的问题中,专家们可能会坐在别处。这就是mod_重写教科书的解决方案。小更正:它是
$1
而不是
$2
。谢谢,这意味着我没有发疯,我已经尝试过这个解决方案,但它没有重写任何内容,而.htaccess文档中的其他条目正在工作。你知道为什么它不起作用吗?如果.htaccess中还有其他条目,那么我们必须检查所有规则的顺序。有可能共享完整的.htaccess文件吗?很抱歉响应太晚,这确实是所有规则的顺序,url已经被以前的规则捕获。这是mod_重写教科书的解决方案。小更正:它是
$1
而不是
$2
。谢谢,这意味着我没有发疯,我已经尝试过这个解决方案,但它没有重写任何内容,而.htaccess文档中的其他条目正在工作。你知道为什么它不起作用吗?如果.htaccess中还有其他条目,那么我们必须检查所有规则的顺序。可以共享完整的.htaccess文件吗?很抱歉,响应太晚,这确实是所有规则的顺序,url已经被以前的规则捕获。