gpt4 book ai didi

node.js - .htaccess 强制使用 SSL 并指向 NodeJS

转载 作者:太空宇宙 更新时间:2023-11-04 12:02:17 26 4
gpt4 key购买 nike

我有一个 GoDaddy VPS 托管服务器。我已经成功安装了 Node/NPM、SSL 证书等,但在使用 .htaccess 时遇到了一些问题。我可以使用 .htaccess 中的以下代码将 http 强制转换为 https:

RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

我还可以通过将以下内容添加到 .htaccess 来绕过必须执行 Apache 反向代理,以便服务器/域使用 NodeJS 而不是 Apache:

RewriteEngine on
RewriteRule (.*) http://localhost:3000/$1 [P,L]

我遇到的问题是让两者同时工作。强制使用 SSL 并指向服务器的 NodeJS。

我不确定 .htaccess 是否是实现这两个目标的最佳途径。

最佳答案

如果您有权访问 Apache 配置文件 (detailed explanation here),则根本不应使用 .htaccess。

在您的 http (:80) 虚拟主机配置中,您可以放置​​ https 强制规则,在您的 https (:443) 虚拟主机中,您可以放置​​反向代理规则。此外,使用 ProxyPass 指令而不是带有 [P] 标志的 RewriteRule 可能会给出一些 performance benefit :

ProxyPass         / http://localhost:3000/
ProxyPassReverse / http://localhost:3000/

关于node.js - .htaccess 强制使用 SSL 并指向 NodeJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51941504/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com