我的Apache也在我的机器上运行,我必须在不添加端口号的情况下运行我的应用程序。
当我使用以下内容从http://localhost:2121访问它时,它可以正常工作:
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('hello');
}).listen(2121);
console.log('Server running');
如何将其设置为使用http://localhost(最后没有端口号。)
答案 0 :(得分:2)
Apache正在为您占用80端口。如果您尝试使用端口80启动节点服务器(假设您的apache已启动),您将收到权限错误。正确的方法是反向代理您的节点应用程序并通过apache提供服务。您的apache配置应如下所示。
<VirtualHost *:80>
ServerName localhost
ServerAlias localhost
DocumentRoot /path/to/your/node/app
Options -Indexes
ProxyRequests on
ProxyPass / http://localhost:2121/
</VirtualHost>
另外,我建议你尽可能使用Nginx,让生活更轻松......
答案 1 :(得分:0)
默认情况下,http端口在80端口上运行,所以如果你喜欢这个
`
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('hello');
}).listen(80);
console.log('Server running');
`
您可以通过http://localhost/
访问您的内容还记得你不能在一个端口上运行多个应用程序。它不起作用。