Php 重写规则斜杠单重定向
我正在尝试为我的v2.2api.php文件创建一个新的重定向。所需的链接是:website.com/api/v2.2/,但是如果我使用u而不是/,重写就可以了: website.com/api_v2.2/(作品): website.com/api/v2.2/(不起作用): 有什么想法吗? 我也试过这些台词,但都不管用:Php 重写规则斜杠单重定向,php,apache,.htaccess,mod-rewrite,Php,Apache,.htaccess,Mod Rewrite,我正在尝试为我的v2.2api.php文件创建一个新的重定向。所需的链接是:website.com/api/v2.2/,但是如果我使用u而不是/,重写就可以了: website.com/api_v2.2/(作品): website.com/api/v2.2/(不起作用): 有什么想法吗? 我也试过这些台词,但都不管用: RewriteRule ^api\/v2.2/?$ /api.php [NC,QSA,L] RewriteRule ^(api)/v2.2$ api.php [QSA,NC,L
RewriteRule ^api\/v2.2/?$ /api.php [NC,QSA,L]
RewriteRule ^(api)/v2.2$ api.php [QSA,NC,L]
你试过避开圆点和斜线吗
RewriteRule ^api\/v2\.2\/?$ /api.php [NC,L]
点在这里可能会导致问题,因为它表示正则表达式()中的“任何字符”。此外,我认为您不需要这里的
QSA
标志。我已将website.com/api.php文件移动到website.com/api/api.php
新的.htaccess url重写规则是:
RewriteRule ^api/v2.2/?$ /api/api.php [NC,L]
您是否尝试添加B标志?重写规则^api/v2.2/?$/api.php[NC,QSA,L,B]文档:B Flag=404 error-too:/404 error-too://v2.2/工作正常,但api/v2.2/否:/n在本地测试时工作正常,
website.com/api/v2.2/
重定向到website.com/api.php
,因此您的.htaccess
的其余部分可能有问题。你能给我们看一下整个文件吗?我在RewriteBase/RewriteCond%{REQUEST_FILENAME}上试过:RewriteEngine-f RewriteCond%{REQUEST_FILENAME}-d#API重写规则^API\/v2\.2\/?$/API.php[NC,L]是的,这非常有效。你的问题在别处。你网站的目录结构是什么?你检查过文件权限了吗?或者此虚拟主机的apache配置?带下划线,工作正常:website.com/api_v2.2/(works):RewriteRule^api_v2.2/?$/api.php[NC,QSA,L]
RewriteRule ^api\/v2\.2\/?$ /api.php [NC,L]
RewriteRule ^api/v2.2/?$ /api/api.php [NC,L]