使用 apache http 服务器部署前端和后端
Deploying frontend and backend using apache http server
我是网络开发的新手,正在尝试了解其工作原理。
我有一个域为 www.example.com
的 Debian 远程服务器。
在它上面我有一个 java 应用程序 运行 作为端口 4321
上的守护进程。
我还在 Debian 远程服务器上设置了一个 apache 服务器,该服务器提供一个 index.html
文件,该文件包含我的应用程序的前端,包括需要向 http://localhost:4321/data
发送获取请求的 java 脚本代码从我的后端端口 4321
获取数据并将其呈现在 html 文件中。
我知道这对你们中的许多人来说似乎很明显,但是当从我的浏览器(不是 Debian 远程服务器,而是我自己的本地计算机)调用 www.example.com
时,我得到 index.html
文件显示在我的浏览器,但脚本标记内的所有获取请求方法都失败了,因为它们将 localhost
解释为我的本地计算机,并试图与我计算机上端口 4321
上的应用程序通信以获取数据而不是 www.example.com
,这显然不存在。
我错过了什么,我是否以正确的方式托管我的应用程序?
提前致谢。
假设您还将对 /data 的请求代理到 java 应用程序,您正在以典型方式托管内容。
异常部分是客户端 java 脚本请求明确尝试对本地主机发出请求。正如您所说,这行不通,因为它在每个浏览器中运行,而不是在代理服务器上运行。这是一种客户端技术。
如果您的代理服务器(例如 CGI 或 apache 模块)或您的 java 应用程序的另一部分正在获取更多数据,“localhost”唯一可行的方法。
我是网络开发的新手,正在尝试了解其工作原理。
我有一个域为 www.example.com
的 Debian 远程服务器。
在它上面我有一个 java 应用程序 运行 作为端口 4321
上的守护进程。
我还在 Debian 远程服务器上设置了一个 apache 服务器,该服务器提供一个 index.html
文件,该文件包含我的应用程序的前端,包括需要向 http://localhost:4321/data
发送获取请求的 java 脚本代码从我的后端端口 4321
获取数据并将其呈现在 html 文件中。
我知道这对你们中的许多人来说似乎很明显,但是当从我的浏览器(不是 Debian 远程服务器,而是我自己的本地计算机)调用 www.example.com
时,我得到 index.html
文件显示在我的浏览器,但脚本标记内的所有获取请求方法都失败了,因为它们将 localhost
解释为我的本地计算机,并试图与我计算机上端口 4321
上的应用程序通信以获取数据而不是 www.example.com
,这显然不存在。
我错过了什么,我是否以正确的方式托管我的应用程序?
提前致谢。
假设您还将对 /data 的请求代理到 java 应用程序,您正在以典型方式托管内容。
异常部分是客户端 java 脚本请求明确尝试对本地主机发出请求。正如您所说,这行不通,因为它在每个浏览器中运行,而不是在代理服务器上运行。这是一种客户端技术。
如果您的代理服务器(例如 CGI 或 apache 模块)或您的 java 应用程序的另一部分正在获取更多数据,“localhost”唯一可行的方法。