Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 访问api时获取404_Node.js_Api_Express_Apache2 - Fatal编程技术网

Node.js 访问api时获取404

Node.js 访问api时获取404,node.js,api,express,apache2,Node.js,Api,Express,Apache2,我正在设置NodeJS项目以访问api 目录树视图 └── html └── perb ├── bin ├── models ├── node_modules 项目树视图 但最终得到了404。 但当我试图通过localhost访问时,它工作正常 localhost地址:localhost:3000/trainer/logintrainer 服务器地址:ip地址/perb/trainer/logintrainer 在bin/www文件中,

我正在设置NodeJS项目以访问api

目录树视图

└── html
    └── perb
        ├── bin
        ├── models
        ├── node_modules
项目树视图

但最终得到了404。 但当我试图通过localhost访问时,它工作正常

localhost地址:localhost:3000/trainer/logintrainer

服务器地址:ip地址/perb/trainer/logintrainer

在bin/www文件中,侦听端口为3000

var port = normalizePort(process.env.PORT || '3000');
app.set('port', port);
但是我也试着把它改成80和8080,但是没有任何帮助

我使用apache2服务器,设置为()


我们将非常感谢您的帮助

在教程中设置的文件中,您是否可以将代理设置为指向您试图命中的ip而不是本地主机

<Location /nodejs>
  ProxyPass http://127.0.0.1:8080
  ProxyPassReverse http://127.0.0.1:8080
</Location>

ProxyPasshttp://127.0.0.1:8080
ProxyPassReversehttp://127.0.0.1:8080

检查您的服务器日志。确保你确实在使用你的应用程序,因为你可能没有。apachehttpd需要知道如何重定向到节点应用程序的端口。您可能想看看如何使用类似的工具来为您执行此操作。这是Apache
httpd
的一个附加组件,它处理端口映射和进程管理。当我检查pm2日志时,它不会影响服务器@Tadman当你说你在“ip地址”点击它时,你是指127.0.0.1还是其他什么?如果是192。您可能正在阅读另一个教程,其中假设您设置了另一个代理,而不是像34这样的常规ip。某物@ashmatic
httpd
配置通常基于主机名,因此如果使用标准的
指令,则主机名需要匹配才能将内容路由到正确的站点。因此,我需要将127.0.0.1:8080更改为常规IP地址,即34。什么?是的,它不知道在你试图点击的ip上监听,因为你从来没有告诉它在那里监听。实际上,我没有找到example.com.conf,但是在文件夹站点下有两个文件可用,即000-default.conf和default-ssl.conf,所以我在000-default.conf中做了更改