我的网站上有以下文件
{website}/restserver/user-create.php?id=...
{website}/restserver/user-read.php
{website}/restserver/session-login.php
...
我想使用以下地址访问它们
{website}/user/create?id=...
{website}/user/read?id=...
{website}/session/login?id=...
我想你明白了。我需要使用两级路径来构建文件名,维护查询字符串。
有可能吗?
谢谢!
答案 0 :(得分:2)
RewriteEngine On
RewriteBase /
RewriteRule ^/user/create$ /restserver/user-create.php [NC,L]
RewriteRule ^/user/read$ /restserver/user-read.php [NC,L]
RewriteRule ^/session/login$ /restserver/session-login.php [NC,L]
答案 1 :(得分:1)
您可以在DOCUMENT_ROOT/.htaccess
文件中使用此代码:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^/?((?!restserver/)[^/]+)/([^/])/?$ restserver/$1-$2.php [L,NC]
查询字符串将自动转移到目标URI。
答案 2 :(得分:0)
从上述解决方案中,我找到了一个通用解决方案。
RewriteRule ^([^/\.]+)/([^/\.]+)?$ restserver/$1-$2.php [L]
谢谢大家!