php - RewriteRule 斜杠单一重定向

标签 php apache .htaccess mod-rewrite

我正在尝试为我的 v2.2 api.php 文件创建一个新的重定向。所需的链接是:website.com/api/v2.2/但如果我使用 _ 而不是/,则重写才有效:

website.com/api_v2.2/(有效):

RewriteRule ^api_v2.2/?$ /api.php [NC,QSA,L]

website.com/api/v2.2/(不工作):

RewriteRule ^api/v2.2/?$ /api.php [NC,QSA,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]

这里的点可能会导致问题,因为它在正则表达式 ( source) 中表示“任何字符”。此外,我认为您在这里不需要 QSA 标志。

关于php - RewriteRule 斜杠单一重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32693907/

相关文章:

php - Apache mod_deflate 和 zlib.output_compression

apache - 重写模块以处理站点版本文件夹(条斜杠)

.htaccess - OpenCart 2.2 : https configuration not loading css

php - 如何在同一个域上运行多个 Laravel 实例?

php - PHP 中的方法调用

PHP 将日期格式插入输入的 "placeholder"

php - 通过 SSH 获取 CPU 使用率

apache - https htaccess 排除一些 url

.htaccess 重写规则

php - 函数未按预期返回数据