如何将 Express/node API 服务到子域?
How to serve Express/node API to subdomain?
我有一个微型 Express 应用程序在我的 Web 服务器上的端口 35000 上提供服务,可以从我的网站访问它。com/api 使用以下 .htaccess 代码(完美运行,只需将 "hello world" 发送到浏览器)。
RewriteEngine On
RewriteRule ^api/(.*) http://127.0.0.1:35000/ [P]
我在 api.mywebsite.com 设置了一个子域,链接到我服务器上的一个单独目录,如果我将 Web 文件放在这里,我可以在 URL 看到它们,所以工作正常。我想将我的 API 移动到 api.mywebsite.com,所以我在子域的目录中创建了以下 .htaccess 文件。
RewriteEngine On
RewriteRule ^(.*) http://127.0.0.1:35000/ [P]
但是从 Express 导航到 api.mywebsite.com returns 时出现 "Not found" 错误,日志为 404 index.php
。为什么需要 index.php 文件?我很高兴至少得到错误,因为这意味着 Express 正在通过子域进行通信,但它没有给我 "hello world" 消息。
我已经从其他问题中查看了 Express vhost,但我很难理解它是否适用于此处,或者我是否缺少简单的 .htaccess 规则。任何帮助都会非常感谢。
只是为了跟进,这解决了我的问题:
我的子域目录中的 .htaccess 文件现在是:
DirectoryIndex disabled
RewriteEngine On
RewriteRule ^(.*)$ http://127.0.0.1:35000/ [P,L]
RewriteRule ^$ http://127.0.0.1:35000/ [P,L]
我有一个微型 Express 应用程序在我的 Web 服务器上的端口 35000 上提供服务,可以从我的网站访问它。com/api 使用以下 .htaccess 代码(完美运行,只需将 "hello world" 发送到浏览器)。
RewriteEngine On
RewriteRule ^api/(.*) http://127.0.0.1:35000/ [P]
我在 api.mywebsite.com 设置了一个子域,链接到我服务器上的一个单独目录,如果我将 Web 文件放在这里,我可以在 URL 看到它们,所以工作正常。我想将我的 API 移动到 api.mywebsite.com,所以我在子域的目录中创建了以下 .htaccess 文件。
RewriteEngine On
RewriteRule ^(.*) http://127.0.0.1:35000/ [P]
但是从 Express 导航到 api.mywebsite.com returns 时出现 "Not found" 错误,日志为 404 index.php
。为什么需要 index.php 文件?我很高兴至少得到错误,因为这意味着 Express 正在通过子域进行通信,但它没有给我 "hello world" 消息。
我已经从其他问题中查看了 Express vhost,但我很难理解它是否适用于此处,或者我是否缺少简单的 .htaccess 规则。任何帮助都会非常感谢。
只是为了跟进,这解决了我的问题:
我的子域目录中的 .htaccess 文件现在是:
DirectoryIndex disabled
RewriteEngine On
RewriteRule ^(.*)$ http://127.0.0.1:35000/ [P,L]
RewriteRule ^$ http://127.0.0.1:35000/ [P,L]