htaccess重写uri,如果以上传开始或没有扩展名


htaccess rewrite uri if starts with uploads or does not have extension

我正在尝试用以下重写器创建一个htaccess文件:uri不以jpeg、jpg、png等结尾,。。。除非uri以"/uploads/"开头。

因此,重写到index.php:HOST/uploads/file1.jpg主机/主页/仪表板

但不要重写:HOST/images/banner.jpg

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{HTTP_HOST} (('/uploads'/)([-a-z0-9_/'.]+))|(([-a-z0-9_/'.]+)!'.(jpeg|jpg|png))$
RewriteRule ^(.*)$ %{ENV:BASE}ci.php [NC,L]

HTTP_HOST与请求URI不匹配。它只匹配HTTP请求中的域名。

你可以使用这个规则:

RewriteCond %{REQUEST_URI} ^/uploads/ [OR,NC]
RewriteCond %{REQUEST_URI} !'.(jpe?g|gif|ico|tiff|png)$ [NC]
RewriteRule ^ ci.php [L]