我正在尝试提出一个重写规则,但我遇到了问题。
我需要什么 - 任何/services/XXX
以重定向到开头的 url/services/api.php?service=XXX
我还想忽略任何可能也匹配的文件或文件夹。
到目前为止我所拥有的:
RewriteRule ^services/([a-z]+)$ /services/api.php?service=$1 [NC, L]
但这根本不起作用,它显示一个 404 页面,说当我测试它时该文件丢失。任何帮助深表感谢。
我正在尝试提出一个重写规则,但我遇到了问题。
我需要什么 - 任何/services/XXX
以重定向到开头的 url/services/api.php?service=XXX
我还想忽略任何可能也匹配的文件或文件夹。
到目前为止我所拥有的:
RewriteRule ^services/([a-z]+)$ /services/api.php?service=$1 [NC, L]
但这根本不起作用,它显示一个 404 页面,说当我测试它时该文件丢失。任何帮助深表感谢。
要忽略存在的文件,只需忽略“RewriteCond”。
只需将进入 services/ 的所有内容重写为 api.php?service ...
将其放入您的服务文件夹。
请注意您的编码,将文件另存为 .htaccess 并使用您的服务器读取的编码。
# .htaccess mod_rewrite
RewriteEngine On
RewriteRule ^(.*)$ api.php?service=$1 [QSA,L]
如果您不需要避免使用文件,则只需转到:
# .htaccess mod_rewrite
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.*)$ api.php?service=$1 [QSA,L]