Apache RewriteRule使用httpd.conf缺少文件夹和文件,不是.htaccess

我在几个站点中都拥有此功能,并被困在站点根目录下的.htaccess文件中:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) /rewrite.cfm?rewrite_path=$1 [L,R,QSA]

我可以在httpd.conf文件中执行此操作吗?如果可能,我宁愿避免使用.htaccess

也接受其他建议。在Centos 7上使用Apache 2.4

wangkai5260929 回答:Apache RewriteRule使用httpd.conf缺少文件夹和文件,不是.htaccess

您可以在httpd.conf.htaccess中使用此修改后的规则:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/?(.*)$ /rewrite.cfm?rewrite_path=$1 [L,QSA]

开始/是可选的,因此该规则在两种情况下均适用,并且您必须删除R(重定向)标志,因为目的是进行内部重写而不是将您的内部URL暴露在其中的重定向浏览器。

本文链接:https://www.f2er.com/3064222.html

大家都在问