我正在创建一个基于静止的API,并且AM卡在HTACCESS重写规则上。
我目前正在使用以下方式:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} !(.*).(css|js|htc|pdf|jpg|jpeg|gif|png|ico)$ [NC]
RewriteRule ^(.*)$ index.php?handler=$1 [QSA,L]
</IfModule>
哪个有效,但是我希望它排除文件扩展目录,而当前排除没有任何区别。
,例如
- /api/object/1/列表有效
- /Api/object/test.php/js/css等。无效
谢谢。
您的RewriteCond
在所有随附的扩展之前都包含.
。
从您的病情中删除.
,它应该像这样工作。
RewriteCond %{REQUEST_URI} !(.*)(css|js|htc|pdf|jpg|jpeg|gif|png|ico)$ [NC]
确实要注意,您将无法在方法/对象名称或方法/对象名称中使用这些扩展名称结尾。
您也可以省略(。*),那么您的病情将是:
RewriteCond %{REQUEST_URI} !.(css|js|htc|pdf|jpg|jpeg|gif|png|ico)$ [NC]