小程序模板网

【nodeJs入门】第3篇:域名绑定服务器IP

这一次并不是讲nodejs的,有点跑偏了,但是都是为小程序搭建后台做的准备。先说下缘故,在小程序内开启的websoket服务在真机上测试一直报错,找了几篇文档,首要确定的是端口和ssl是否有问题。因为ssl是用Linux的ope ...

 
 
 

这一次并不是讲nodejs的,有点跑偏了,但是都是为小程序搭建后台做的准备。先说下缘故,在小程序内开启的websoket服务在真机上测试一直报错,找了几篇文档,首要确定的是端口和ssl是否有问题。因为ssl是用Linux的openssl生成的,所以我对这个的怀疑度最高。为排除这一个问题,我决定申请一个域名和证书,绑定在我的服务器IP上。 
这一路很是尴尬...

  1. 在腾讯云上申请一个域名(真的不是在打广告!!)一般第一年的比较便宜,我买了个.xyz的域名,第一年8块,续费每年99块(贼贵贼贵的),其他的第一年都上20+,30+,我打算第一次用,先买个便宜的试一下吧。.xyz和.cn/ .com/ .net等等域名的区别可参考百科,购买时系统会提醒的是备案地点的不同。买个域名后,就可以免费申请ssl证书,可用期限1年。

  2. 等申请通过之后,在买域名的地方,设置网站解析!!!就是把域名绑定在IP地址上。若是没设置,后面无论如何都没用,这坑我可是跌得够深的。笑着活下去。

  3. 在服务器(Ubuntu)上指定域名和路径文件。这里我用的是Nginx。这里小插曲很多.... 
    3.1 Ubuntu下Nginx安装 ,安装的Nginx 1.4.6 一直无法启用。查看日志是80端口被占用,如该文章内所示 Starting nginx: [emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use)。 但是,并没有找到对应文件需要修改的地方。于是kill 掉所有的80端口进程。重启服务,未果。

    3.2 卸载Nginx 没法好好玩,于是打算卸载重装。在根目录下用命令 find -name ‘nginx’ 找到相关文件 rm 掉,再运行apt-get remove nginx删除。然而卸载后的每次重装,都会遇到缺少nginx.conf或者缺少自启用脚本等问题。后来跑偏了。

    3.3 更改Nginx源 跑偏不是没有好处的,路过一个比较有趣的博客,谢谢博主,指出更改源的方案,不然我卸载10次重装10次还是找不到问题。更改源之后install 的版本是 1.10.3,马上就跑动了....(自知心酸的落泪) 
    3.4 Nodejs绑定域名与反向代理 (注:很多类似的文件都是配置Apache PHP的,看清是否是nodejs的就好。) 
    附上配置:

 

		
  1. upstream nodejs{
  2.  
  3. server 127.0.0.1:3303; #项目的服务开启监听端口
  4.  
  5. # server 127.0.0.1:3001;
  6.  
  7. keepalive 64;
  8.  
  9. }
  10.  
  11. server {
  12.  
  13. listen 3000;
  14.  
  15. server_name www.xxxx.xyz xxxx.xyz;
  16.  
  17. location / {
  18.  
  19. proxy_set_header X-Real-IP $remote_addr;
  20.  
  21. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  22.  
  23. proxy_set_header Host $http_host;
  24.  
  25. proxy_set_header X-Nginx-Proxy true;
  26.  
  27. proxy_set_header Connection "";
  28.  
  29. proxy_pass http://nodejs; #这里的nodejs应该是上面的upstream中的nodejs一致。所以这里取的应该是其server地址(待确定)
  30.  
  31. }
  32.  
  33. }
     参考文档:
       3.4.1 [Nginx配置文件nginx.conf中文详解][7]
       3.4.2 [nginx服务器绑定域名和设置根目录的方法][8]
       3.4.3 [用 nodejs 做反向代理服务器][9]
       3.4.5 [详述:Nginx请求反向代理][10]

3.5 一切就绪,开启node服务,用域名访问,no problem~。但是在小程序上能否在真机上测试,这个我还没弄。

3.6 附上常用弄服务器时用到的命令:

 

		
  1.  
  2.  
  3. apt-get update // 更新软件源
  4.  
  5. apt-get install nginx // 安装nginx
  6.  
  7. echo $? // 查看命令执行结果,0为无异常
  8.  
  9. nginx -v // 查看安装后的nginx版本
  10.  
  11. /etc/init.d/nginx start // 开启nginx服务
  12.  
  13. ps -ef|grep nginx // 查看与nginx有关的进程
  14.  
  15. lsof -i:80 // 查看占用80端口的服务
  16.  
  17. find -name 'nignx' // 在cd / 后执行该命令,找到名为nginx的文件夹的路径
  18.  
  19. rm -rf /ect/nginx // 删除/etc路径下的nginx文件夹
  20.  
  21. apt-get remove nginx // 卸载nginx
  22.  
  23. apt-get remove nginx* // 卸载nginx与nginx相关的包
  24.  
  25. vim vhost.conf // 编辑vhost.conf文件

3.7 上述配置出来的是http,若要配置成https的话,根据证书安装指引的步骤做即可。

如有不对的地方,请指出,感谢~



易优小程序(企业版)+灵活api+前后代码开源 码云仓库:starfork
本文地址:https://www.eyoucms.com/wxmini/doc/course/21394.html 复制链接 如需定制请联系易优客服咨询:800182392 点击咨询
QQ在线咨询