任何人都可以帮助将此 .htaccess 规则更改为 nginx 吗?

发布于 2025-01-11 08:12:41 字数 366 浏览 0 评论 0原文

我正在使用名为 JWT Authentication for WP REST API,它有一些用 .htaccess 编写的规则,但我使用的是 Nginx 服务器,并且想在 Nginx 配置中添加这些规则。

rewriteEngine on
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]

I am using a WordPress plugin named JWT Authentication for WP REST API, it has some rules written in .htaccess but I am using Nginx server and want to add these rule in the Nginx configuration.

rewriteEngine on
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

你怎么敢 2025-01-18 08:12:41
RewriteCond %{HTTP:授权} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]

您不需要转换此 Apache 规则以在 Nginx 中工作。

此规则是针对当 PHP 作为 CGI(而不是 Apache 模块)安装时 Apache 强加的特定 Apache 安全功能(障碍)的解决方法。 AFAIK,同样的问题不适用于 Nginx。

(基本上,Apache 会阻止将授权 HTTP 请求标头发送到所有后端 CGI 脚本,以防止用户名/密码无意中发送到不受信任的脚本。不幸的是,当安装为(快速)CGI 时,这也包括 PHP。 )

RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]

You shouldn't need to convert this Apache rule to work in Nginx.

This rule is a workaround for a specific Apache security feature (hobble) that is imposed by Apache when PHP is installed as CGI, as opposed to an Apache module. AFAIK, the same issue does not apply to Nginx.

(Basically, Apache prevents the Authorization HTTP request header being sent to all backend CGI scripts to prevent usernames/passwords being inadvertently sent to untrusted scripts. Unfortunately, this also includes PHP when installed as (Fast)CGI.)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文