我正在使用MODX Revolution 2.2.4-pl。我正在使用提供的.htaccess文件,并打开了友好的URL。这些是我的重写规则。
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
他们需要从网址中删除.HTML才能看到什么?
过去二十分钟我一直在谷歌上搜索,我的解决方案没有奏效。 感谢
答案 0 :(得分:25)
内置方式更容易。登录管理器。
MODX革命
2.2.x及更早版本:转到System -> Content Types
。
2.3.x及更高版本:转到Content -> Content Types
。
查找HTML并删除“文件扩展名”中写入的内容。您可以通过双击表格中的.html
来激活可编辑字段。删除内容后,清除缓存。
MODX Evolution
转到Tools -> Configuration -> Friendly URLs
。
删除“友情网址后缀”中的内容。保存并清除缓存。
答案 1 :(得分:3)
这对我有用:
# The Friendly URLs part
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
RewriteCond %{REQUEST_URI} \.html$
RewriteRule ^(.*)\.html$ $1 [R=301,L]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
#RewriteRule . /index.php [L]
答案 2 :(得分:1)
首先,我认为你需要了解这个.htaccess试图做什么。
尝试将进入站点的所有不是实际文件或目录的请求(即图像,css或其他可能不属于“主”网站的脚本)重定向到前端控制器位于index.php。
如果您要做的是在您的网站上使用一堆* .html文件(而不是前端控制器),但让他们使用干净的URL,那么您将需要使用不同类型的重写。可能更像是
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule ^(.*)$ $1.html [L,QSA]
此规则会以http://domain.com/somepage的形式接受请求,并默默指向http://domain.com/somepage.html以提供请求。