Articles of node.js

map指令不允许在这里

所有这些东西我都很新,所以请和我一起裸照。 我正在按照这个教程https://medium.com/startup-founder-panel/deploying-a-meteor-app-with-nginx-from-scratch-1332b32e99a5当我做sudo nginx -t我得到 nginx: [emerg] "map" directive is not allowed here in /etc/nginx/sites-enabled/app:2 nginx: configuration file /etc/nginx/nginx.conf test failed 这是应用程序文件 # this section is needed to proxy web-socket connections map $http_upgrade $connection_upgrade { default upgrade; '' close; } # HTTP server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; location = /favicon.ico { root […]

Nginx – 即使在添加指令“访问控制允许来源”后,请求logging错误

我试图运行我的nodejs应用程序的nginx盈方(我正在使用Windows机器) 我的NodeJS应用程序运行在3000端口 我已经在8070端口启动了Nginx 当我尝试击中http:// localhost:8070 /从浏览器得到下面引用的问题 这是我的Nginxconfiguration server { listen 8070; server_name localhost; location / { access_log logs/access.log; add_header 'Access-Control-Allow-Origin' '*' always; add_header 'Access-Control-Allow-Credentials' 'true'; add_header 'Access-Control-Allow-Headers' 'Content-Type,Accept'; add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, PUT, DELETE'; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-NginX-Proxy true; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_max_temp_file_size 0; proxy_pass […]

nginx – 有史以来最为棘手的问题 – 收到的一些请求格式不正确

这个问题对我来说是一个谜,我将非常乐意find解决scheme。 我将提供我认为相关的环境的详细信息,但是如果需要其他任何内容,请发表评论,我将添加。 基础设施: 主机 – 数字海洋液滴 os – Ubuntu 17.04 反向代理 – nginx 1.12.0 (也发生在nginx 1.10.0的问题) 应用服务器 – node-js 7.10.0 (也发生在7.9.0) 客户端 – Android (使用OkHttp 3.8.0发生在几个版本,包括5.0,6.0.1,7.1.1,所以很可能不相关) 所以nginx将stream量转发到nodejs,nodejs处理来自Android客户端的请求。 问题: 对于某些客户端来说,偶尔,对于特定的查询,nodejs收到的json格式不正确。 具体来说,几个字节写在身体的json的开始, 这里是一个例子: 2017-05-24 15:42:14.899 (+0300) – error: Error summary: name: SyntaxError status: 400 request: POST /api/v1/user_details body: J ount_id":"217627","user":{"email": "[email protected]" ….<rest of json is ok> 注意身体的开始 […]

npm的错误信息包grunt不能满足兄弟的peerDependencies …告诉?

在一个有点过时的npm / node-platform上,我在尝试安装grunt时遇到了这个错误。 npm ERR! peerinvalid The package grunt does not satisfy its siblings' peerDependencies requirements! npm ERR! peerinvalid Peer [email protected] wants grunt@~0.4.0 npm ERR! peerinvalid Peer [email protected] wants grunt@~0.4.0 npm ERR! peerinvalid Peer [email protected] wants grunt@~0.4.0 npm ERR! peerinvalid Peer [email protected] wants grunt@>=0.4.0 npm ERR! peerinvalid Peer [email protected] wants grunt@~0.4.0 npm ERR! peerinvalid Peer […]

使用nginx设置数字海洋上的MEAN应用程序

我正在尝试在digitalocean上设置一个Nodejs + Angularjs应用程序。 我将前端(angularjs)和后端(nodejs)分别分别放置在两个分别在端口3000和4000上运行的nodejs服务器上。 我希望angularjs应用程序在mydomain.com上提供,后端服务器通过子域api.mydomain.com提供服务。 我的nginxconfiguration是: server { server_name mydomain.com; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $proxy_host; proxy_set_header X-NginX-Proxy true; proxy_pass http://127.0.0.1:3000; } } server { server_name api.mydomain.com; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $proxy_host; proxy_set_header X-NginX-Proxy true; proxy_pass http://127.0.0.1:4000; } } 以下是液滴的DNSconfiguration: Type Host […]

NGINX – 在一个端口上提供create-react-app应用程序,在另一个端口上提供我的api

在我的应用程序中,我正在使用create-react-app并通过在节点pm2进程中使用“serve -s build”在端口5000上为我的站点的前端提供服务。 我可以通过使用这个configuration为我的nginx工作。 server { listen 443 ssl; server_name random.com www.random.net; ssl_certificate /etc/letsencrypt/live/random.net/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/random.net/privkey.pem; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; ssl_dhparam /etc/ssl/certs/dhparam.pem; ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA'; ssl_session_timeout 1d; ssl_session_cache shared:SSL:50m; ssl_stapling on; ssl_stapling_verify on; add_header Strict-Transport-Security max-age=15768000; location / { proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header Host $http_host; proxy_pass "http://127.0.0.1:5000"; } location ~ /.well-known { allow all; […]

如何在Unix服务器上安装Node.js和NPM,以便用户不需要sudo来安装或读取全局包?

这真的是非常罕见的情况,我无法在任何地方find答案吗? 无论如何。 我在DigitalOcean上有一个Ubuntu VM服务器,我正在这台服务器上运行Jenkins,以构build,testing和本地部署一个Web应用程序(主要是将Web应用程序目录复制到其他位置并重新启动运行它的systemctl服务)。 问题是jenkins在系统中生成的用户(你不能用btwlogin),不知何故弄乱了节点模块目录。 它被安装在jenkins主文件夹/var/lib/jenkins/ ,执行npm install (尽pipe没有-g选项),而不是从应用程序内部生成部署目录和包parsing,无法parsing安装在jenkins主目录中的模块(尽pipe由jenkins运行,所以jenkins用户)。 我怀疑解决办法是允许以某种方式pipe理节点安装,这样每个用户都可以安装和需要全局模块而不需要使用sudo ,但是到目前为止,我查找的每个解决scheme(nvm,n-install,各种脚本)是单用户,或sudo。 我真的不能对jenkins(或任何其他程序生成的)用户做任何事情。 那么这种情况下最好的解决scheme是什么?

进程在REdHat上随机死亡

我们有有限的内存的Java虚拟机和MongoDB。 部署的进程随机地被及时杀死/终止 。 无论是java进程,nodejs还是mongodb进程。 我们尝试了OOMconfiguration更改也没有帮助我们。 我们发现没有logging或追踪死亡的进程。 认为这是一个记忆问题,但我们有足够的记忆。 系统和部署规格: 操作系统 :RedHat RAM内存 :32 GB 硬盘 :120 GB 应用程序部署 :约10个jetty application services , mongoDB , Nodejs , Apache web server 试图在本地机器和很less的内存装载机,没有工作,无法重现。 我们没有线索了

连接到上游时502连接被拒绝:在Google App Engine上修改Nginx上游

我真的在努力与谷歌App Engine部署我的节点JS API,因为我总是有一个502错误。 我在这个话题上看到了很多答案,但是没有一个答案对我来说。 我在日志中发现了以下错误: "[error] 32#32: *4028 connect() failed (111: Connection refused) while connecting to upstream, client: 130.211.1.248, server: , request: "GET /_ah/health HTTP/1.1", upstream: "http://172.17.0.1:8080/_ah/health" 我的想法是改变上游IP地址,目前是http://172.17.0.1:8080 ,我怎么能在Google App Engine中这样做呢? 谢谢

node.js'找不到'警告

当我运行configuration,我看到“未find”警告消息port.h,sys / event.h和kqueue。 Checking for program g++ or c++ : /usr/bin/g++ Checking for program cpp : /usr/bin/cpp Checking for program ar : /usr/bin/ar Checking for program ranlib : /usr/bin/ranlib Checking for g++ : ok Checking for program gcc or cc : /usr/bin/gcc Checking for program ar : /usr/bin/ar Checking for program ranlib : /usr/bin/ranlib Checking […]