【发布时间】:2019-04-07 17:28:04
【问题描述】:
我的根目录下面的 .htaccess 文件用于重写所有 /api/ 然后从 /api/api.php 中的 $_GET 的 URL 中输出键值对?
我该如何修改这个,让所有在api中的现有文件或文件夹(例如通过这个方案访问的/api/test或/api/test/file.php不会被重写规则重写?
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/api
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
#RewriteRule (.*) $1
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^(.*/)([^/]+)/([^/]+) $1?$2=$3&%1 [QSA,L]
RewriteCond %{REQUEST_URI} ^/api
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^([^/]+)/ $1/$1.php?%1 [L]
</IfModule>
【问题讨论】:
标签: php apache mod-rewrite