Apache 最简单的URL重写规则在.htaccess中不起作用
我试图运行以下虚拟URL重写规则,但每次添加它时都不会发生任何事情:Apache 最简单的URL重写规则在.htaccess中不起作用,apache,.htaccess,mod-rewrite,url-rewriting,Apache,.htaccess,Mod Rewrite,Url Rewriting,我试图运行以下虚拟URL重写规则,但每次添加它时都不会发生任何事情: <IfModule mod_rewrite.c> Options +FollowSymLinks RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)(\.jpg)$ $1 </IfModule> 选项+FollowSymLinks 重新启动发动机 重写cond%{REQU
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)(\.jpg)$ $1
</IfModule>
选项+FollowSymLinks
重新启动发动机
重写cond%{REQUEST_FILENAME}-F
重写规则^(.*)(\.jpg)$$1
上述规则有什么问题吗?您的规则毫无意义-如果文件不存在,您将签入“重写条件”,如果存在,则尝试重定向到不存在的文件。
mod_rewrite足够聪明,可以防止这种可怕的重写,他正在检查重写规则后的uri是否没有改变,如果是,他只是忽略了这个重写规则。因此,您的重写规则必须修改原始uri,否则它将被忽略。您的规则没有执行任何操作。你要输入什么URL?你期望什么行为?@anubhava不,你是对的,但任何其他规则都不起作用。我更新了我的answer@anubhava再看看这个问题,它是相关的:所以重写cond%{REQUEST_FILENAME}-f表示如果文件不存在?