Regex 使用/或不使用URL重写
我正在尝试修复此警告: 尽可能避免使用文件扩展名。。。。将URL重写视为创建适当URL的有效且透明的方法 我在.htaccess文件中添加了以下内容:Regex 使用/或不使用URL重写,regex,apache,.htaccess,mod-rewrite,Regex,Apache,.htaccess,Mod Rewrite,我正在尝试修复此警告: 尽可能避免使用文件扩展名。。。。将URL重写视为创建适当URL的有效且透明的方法 我在.htaccess文件中添加了以下内容: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}\.html -f RewriteRule ^(.*)$ $1.html 它在example.com/page上工作正常,但我在example.com/page上收到一个内
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule ^(.*)$ $1.html
它在example.com/page上工作正常,但我在example.com/page上收到一个内部服务器错误/
有什么想法吗?更改正则表达式以允许可选的尾部斜杠:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/$1\.html -f [NC]
RewriteRule ^(.+?)/?$ /$1.html [L]
谢谢你的回答。现在/可以工作了,但是html页面显示时没有样式(CSS等)。对于CSS/js,只需在CSS、js、图像文件中使用绝对路径,而不是相对路径。这意味着您必须确保这些文件的路径以
http://
或斜杠/
开头。您可以尝试将其添加到页面的HTML标题中:
,以便从该URL而不是当前URL解析每个相对URL。工作做得很好。。谢谢阿努巴瓦!