我能够在家用电脑上设置Apache Web服务器,并在端口80上运行。我的转发路径已设置好,以便我的公共域将我带到Apache HTDOC文件中。要澄清的是,我能够托管我自己的网络服务器,因此我可以托管我自己的网站。我成功地显示HTML内容。在Apache上托管我自己的节点服务器?
现在,我想添加NodeJS到这个功能,我有点困惑如何。
继answer on this link,我做了确保取消对我的httpd
文件下面几行:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
现在我在哪里,我httpd
文件,把这个线有点糊涂:
ProxyPass /node http://localhost:8000/
对于这个问题,我不确定这是否允许我在外部访问我的nodejs。
另外,我想知道我是否应该在我的Apache文件夹上安装NodeJS,在我的案例中是c:/Apache24
。如果是这样,我将安装在哪个目录中?
要添加,我的测试节点文件(名为nod.js)包含以下代码。
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello Apache!\n');
}).listen(8000);
我通过node nod
在我的htdocs运行此。虽然这在localhost中有效,但它不会显示在我的外部IP上。
编辑:从this example我相信,我有包装的虚拟主机里面我的ProxyPass,像这样:
<VirtualHost *:80>
ProxyPass /node http://localhost:8000/ connectiontimeout=5 timeout=30 # optional timeout settings
</VirtualHost>
这是不行的,虽然我的球场内承担其我应该是在做。
难道我也有转发路径我的8000端口? –
你已经做了,根据你的'httpd'以上 –
我有点困惑,因为我的错误是在那里。我有一个index.html文件,只要我点击公共IP地址就会运行(例如:http://12.12.12.12.12)。现在,当我运行'node nod'时,我的'localhost:8000'显示了我的节点文件。但是当我去'http://12.12.12.12.12:8000'时,它不会出现。 –