gpt4 book ai didi

javascript - 在 Apache CentOS6 上运行的 Node JS 应用程序 - htaccess

转载 作者:行者123 更新时间:2023-12-03 05:47:12 26 4
gpt4 key购买 nike

我们已经搜索了又搜索,但始终无法弄清楚如何编辑 .htaccess 文件以允许我们的 Node.js 应用程序运行。

  • 我们的根域运行着一个 WordPress 网站。我们在 Node 中构建了一个自定义 API,将部署在 www.website.com/api 上。
  • 我们已在 centOS6 上成功安装了 node。我们还可以通过导航到 /api 文件夹并运行 nohup node my_app.js & 在终端中成功运行 Node 服务器。日志确认服务器正在端口 51900 上运行。

问题就在这里。我们知道 Node API 正在运行,但我们只是不知道如何查看它。我们非常确定必须更改 .htaccess 文件以重定向 /api/ 目录。这是我们的 .htaccess 文件的复制/粘贴以及我们迄今为止所拥有的内容。但我们的重定向似乎不起作用。

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteRule ^/api$ http://127.0.0.1:51900/ [P,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/api/(.*)$ http://127.0.0.1:51900/$1 [P,L]
RewriteRule . /index.php [L]

</IfModule>

# END WordPress

非常感谢任何帮助。

最佳答案

您需要从 WordPress 中排除您的 API URL。同样在 .htaccess 中,您不会在重写规则中添加 /,例如 ^/api。目录 (htaccess) 上下文中没有前置斜杠。它应该是 ^api。这也是您的规则不匹配的原因。试试这个,看看是否有帮助。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteRule ^api/(.*)?$ http://127.0.0.1:51900/$1 [P,L]

RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

</IfModule>

关于javascript - 在 Apache CentOS6 上运行的 Node JS 应用程序 - htaccess,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40291830/

26 4 0
文章推荐: javascript - 如何调用基于动态范围的函数?
文章推荐: jenkins - 如何防止两个相同类型的管道 jenkins 作业在同一节点上并行运行?
文章推荐: perl - 如何优雅地调用名称保存在变量中的 Perl 子例程?
文章推荐: javascript - 如何将改为
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com