我有一台带有1个IPv4(111.111.111.111)(和1个IPv6地址)的Ubuntu 13.10 VPS服务器。 我最近要求一个额外的IP地址(222.222.222.222),但我似乎无法弄清楚如何将新的IP地址添加到我的networkingconfiguration。 我目前的(默认?)networkingconfiguration: /etc/network/interfaces : # This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet dhcp 从search后,我想到了,我需要添加新的IP地址,如下所示: iface eth0:1 inet […]
我有一个Nginx运行,端口3000上的Node.js。 location / { root /path/to/my/site; index index.html index.htm; try_files $uri $uri/ @node; } location @node { proxy_set_header X-Real-IP $remote_addr; 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_pass http://127.0.0.1:3000; proxy_redirect off; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } 这完美的作品,当url不是一个文件时获取节点内容。 (所以这加载socket.io/socket.io.js罚款)。 现在我想要所有页面redirect到我的index.html在根。 所以当用户刷新//域/ with / extra / path; 我想运送根//domain/index.html。 我需要重写这个,但是这会破坏我检查节点文件。 所以我需要的东西只redirectGET /(url)/我的根/index.html,而不是GET文件。
我想用我的Gmail帐户和nodemailer发送一些电子邮件。 本地,它工作正常,但不是在我的服务器。 $ telnet smtp.gmail.com 465 Trying 74.125.29.108… Trying 74.125.29.109… Trying 2607:f8b0:400d:c04::6d… telnet: Unable to connect to remote host: Network is unreachable $ openssl s_client -connect smtp.gmail.com:465 connect: Connection timed out $ nslookup smtp.gmail.com Server: 8.8.4.4 Address: 8.8.4.4#53 Non-authoritative answer: smtp.gmail.com canonical name = gmail-smtp-msa.l.google.com. Name: gmail-smtp-msa.l.google.com Address: 74.125.29.108 Name: gmail-smtp-msa.l.google.com Address: 74.125.29.109
我必须在正在运行的生产服务器之前实现一个代理服务器来路由和保护生产服务器。 在生产服务器上多个node.js应用程序监听不同的端口。 client1.example.com –> ProxyServer –> Application on LiveServer1 at port 3001 client2.example.com –> ProxyServer –> Application on LiveServer1 at port 3002 … client100.example.com -> ProxyServer –> Application on LiveServer6 at port 3001 所有子域名只能通过https访问,用户不应该被注意到任何ssl证书问题(man-in-the-the-middle)。 我正在调查使用Squid或Nginx。 你能推荐什么这个设置?
简单节点服务器启动如下: server.listen(8080, '127.0.0.10'); 这个ip地址在ifconfig任何地方都不存在: sudo ifconfig | grep 127.0.0.10 # No matches 我可以连接到127.0.0.10并到达节点,但没有任何其他回环IP: curl -sS http://127.0.0.10:8080/ # Works curl -sS http://127.0.0.1:8080/ # curl: (7) couldn't connect to host 我可以ping任何回环地址(例如127.0.12.34 ),并得到一个回应。 这里发生了什么,最重要的是,在生产环境中使用这个地址,而不用像lo:1那样创build一个新的环回适配器是安全的。
我有一个超级简单的testing节点服务器 # server.js var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello World\n'); }).listen(8080, '127.0.0.1'); console.log('Server running at http://127.0.0.1:8080/'); 我有一个简单的新贵脚本/etc/init/myapp.conf description "myapp" author "me" start on started stop on shutdown exec /usr/bin/node /path/to/server.js 开始工作很好 sudo start myapp myapp start/running, process 2518 但停止只是重新启动应用程序 sudo stop myapp myapp start/running, process 2527 我没有得到什么? PS:我使用的是Ubuntu 14.04
鉴于以下虚拟主机: <VirtualHost *:80> DocumentRoot "/var/www/dashboards/public/dist" Servername local.dashboards ServerAlias local.dashboards Header add Access-Control-Allow-Origin: "*" Header add Access-Control-Allow-Methods: "POST, GET, OPTIONS, PUT, DELETE, HEAD" Header set Access-Control-Allow-Headers: "Origin, X-Requested-With, Content-Type, Accept, Authorization" Alias /api /var/www/dashboards/laravel/public <Directory "/var/www/dashboards/public/dist"> Options MultiViews FollowSymLinks AllowOverride All Order allow,deny Allow from all </Directory> <Directory "/var/www/dashboards/laravel/public"> Options MultiViews FollowSymLinks AllowOverride All Order allow,deny […]
我得到一个node.js服务器上的请求。 我已经简化了testing用例,说明它必须是系统设置的问题。 我是一名开发人员,对服务器pipe理的经验很less,所以我一定会错过一些明显的东西。 服务器在Digital Ocean上,在Ubuntu上使用MEAN的标准设置。 我在服务器设置上没有太多变化。 我应该在哪里看? 这里是节点服务器代码(它是运行的真实代码): var http = require('http'), express = require('express'), path = require('path'); var app = express(); var rcount=0; app.use(function(req, res, next) { console.log('–'+rcount+':'+req.protocol+'://' + req.headers.host + req.originalUrl); rcount++; next(); }); app.use('/js',express.static(path.join(__dirname, 'public/js'), {maxAge: 86400000})); http.createServer(app).listen(9876, function(){ console.log('Express server listening on port 9876'); }); 这里是围攻下发生的事情(抱歉,长度,但需要看到图片)。 服务器端的logging器显示表示DID不接收超时的请求。 在testing环境中,没有代理或任何东西,节点直接在9876上运行,如图所示。 MacBook-Air-alex:www alex$ siege […]
我正在尝试在我的VPS上托pipe4个NodeJS进程。 其中两个是必须可以通过浏览器访问的网站,可以称为a.com和b.com 。 a.com在端口3000上运行,而b.com在端口4000上运行。另一个是运行在端口7000上的网站,没有指向它的域名,所以我想用IP地址访问它VPS和端口,如0.1.2.3:7000 。 最后一个是在端口7500上运行的SocketIO进程,也应该可以通过它的地址: 0.1.2.3:7500 :7500进行访问,但是我想它的configuration应该和在7000上运行的类似,所以我们0.1.2.3:7500忘掉它。 我想我应该使用Nginx来做到这一点,但我不能configuration它的工作。 到目前为止,我已经设法使a.com和b.com正常工作,但我无法访问0.1.2.3:7000 。 我到目前为止所做的是在/etc/nginx/sites-available/创builda.com , b.com和c (在7000端口上运行的)configuration文件,并在/etc/nginx/sites-enabled为它们创build符号链接。 a.com server { listen 80; server_name www.a.com a.com access_log /var/log/nginx/a.com.access.log; rewrite_log on; location / { proxy_pass http://127.0.0.1:3000; } } b.com server { listen 80; server_name www.b.com b.com; access_log /var/log/nginx/b.com.access.log; rewrite_log on; location / { proxy_pass http://127.0.0.1:4000; } } C server […]
我有一个WS2008 x64服务器,它的80端口上有NodeJS应用程序。 服务器不断接收来自不同IP地址的试图将我的应用程序用作代理的查询。 NodeJS(使用Express模块)正在回复404错误,但在会话初始化期间(使用Everyauth模块)失败。 所以,我把这个问题分为两部分: 我需要find如何模拟攻击者的请求的方式; 找出为什么这些请求是以一种错误的方式处理的(这个我会问在另一个论坛) 以下是攻击者的一个典型要求: GET http://www.baidu.com/ HTTP/1.1 User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E) Content-Type: application/x-www-form-urlencoded Accept: */* Referer: http://www.baidu.com/ Host: www.baidu.com Accept-Encoding: gzip, deflate Proxy-Connection: Keep-Alive 我试图用cURL重新创build它(用主机中的服务器的IP地址replacewww.baidu.com) curl -H "Host: www.baidu.com" […]