阿里云centos配置nginx和nodejs
今天新买了阿里云,想把网站跑起来,于是记录跑起来的过程
1.购买域名
2.购买解析
3.购买ecs主机
4.ssh登录主机
5.安装vsftpd
6.配置ftp用户、文件夹、权限
7.安装nginx/nodejs
8.安装7z
9.上传源码
10.起飞
1.备案
阿里云备案系统,备案多久,就送多久,一般是备案2周到3周,如何备案,首先先买了域名,之后买服务器,然后再在控制面板中进入域名备案中心,自己按照阿里云的提示一步一步的进行填写,填写的时候注意,需要打印一张审核单,这个审核单填完了(其实就是签字)然后,再上传回去,接着申请幕布,幕布邮寄到家估计是3天,然后就坐等备案中心审批,至此备案结束,备案结束之后,可以在阿里云进行域名解析,解析到你的服务器,如果你捉急用,可以利用ip地址来访问你的服务器,这就需要安装nginx来处理80端口了。
2.安装nginx
#1. 安装
yum install nginx
#2. 启动服务
service nginx start
3.安装7z(可以不安装)
#安装7z是为了方便解压7z的压缩包,比如你用ftp上传了7z到你的服务器,只能使用7z去解压
yum install p7zip
7za x seal-script-darkness.7z
4.centos安装nodejs
#1.编译安装(不推荐)
yum -y install gcc make gcc-c++ openssl-devel wget
make && make install
node -v
#2.手动解压,增加软连接到path
#创建文件夹
mkdir /opt/soft/node
cd /opt/soft/node
#下载 连接可以从nodejs.org download页面右键复制到
wget https://nodejs.org/dist/v6.7.0/node-v6.7.0-linux-x64.tar.xz
#解压
tar -xvf node-v6.7.0-linux-x64.tar.xz
#进入解压后的文件夹
cd /opt/soft/node/node-v6.7.0-linux-x64/bin/
#检测版本
./node -v
#增加软连接(环境变量) 不建议这样
ln -s /opt/soft/node/node-v6.7.0-linux-x64/bin/node /usr/bin/node
ln -s /opt/soft/node/node-v6.7.0-linux-x64/bin/npm /usr/bin/npm
#增加node的PATH环境变量(建议使用)
vi /etc/profile
#添加如下两行,注意自己的node路径
export NODE_PATH=/opt/soft/node/node-v6.7.0-linux-x64/bin
export PATH=${PATH}:${NODE_PATH}
#使机器生效
. /etc/profile
#我解释一下为何增加软连接不如增加环境变量,因为你的node需要全局安装一些生产环境必备的软件,比如express,或者forever,npm i -g express 之后,你再使用 express demo 等命令,它是找不到的,因为你的软连接只连接了node和npm,这就导致以后你每全局安装一个package,就需要ln -s 相关命令到/usr/bin/xxx 这很不爽,不如我们直接把path放到环境变量里面。就这么简单。
#全局检测版本
cd /
node -v
#加快npm的下载速度
npm config set registry="http://registry.npmjs.org/" #官方的镜像,这行命令用来重置仓库,恢复到官方
npm config set registry="https://registry.npm.taobao.org" #淘宝的镜像,推荐使用这个,不用安装cnpm也可以使用
#安装生产环境工具,后台启动node,不至于关闭了ssh就关闭了node服务,推荐pm2和forever
npm i -g forever
#开启 node
forever start app.js
#关闭 node
forever stop app.js
#查看当前运行的node实例,进程信息
forever list
上传源码(从本地上传代码到阿里云服务器某目录)
scp -r ../node-weixin root@ip:/opt/nodepro/
5.配置nginx转发
#1.查找nginx路径
whereis nginx
cd /etc/nginx/
vi nginx.conf
#在server上面的location里面我们来写一下转发规则,让所有的 js-dev.cn/weixin的请求都转发到node端口,其余的都走自己的80端口,这样我的网站既可以当网站,又可以提供微信公众号的功能。
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
root /usr/share/nginx/html;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location ^~ /weixin { #这个意思就是拦截 js-dev.cn/weixin的请求,注意后面没有反斜线,这样会转发到 js-dev.cn:3000/的根路径,如果你在 ^~ /weixin/ 这样会转发到 js-dev.cn:3000/weixin/ 这就不行了,微信公众号要求是必须根路径,而且80端口
proxy_pass http://127.0.0.1:3000;
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
然后执行
nginx -t //检查是否有语法错误
nginx -s reload //重启
nginx -s stop //关闭
ps -ef | grep nginx
kill -9 进程id
nginx转发规则参考:
http://www.cnblogs.com/AloneSword/p/3673829.html
http://blog.csdn.net/tobacco5648/article/details/51099426
npm软连接参考:
http://www.16boke.com/article/detail/28
https://segmentfault.com/q/1010000004445655
https://cnodejs.org/topic/56fdeeaec5f5b4a959e91765
https://segmentfault.com/q/1010000000396247
http://www.w3cfuns.com/notes/17389/32f6b05cca6502e0ca3219bf7ec8820e.html
https://segmentfault.com/q/1010000006920652
阿里云centos配置nginx和nodejs的更多相关文章
- 在阿里云 ECS 搭建 nginx https nodejs 环境(二、https)
在阿里云 ECS 搭建 nginx https nodejs 环境(二) 这次主要内容是 如何在 ubuntu 的nginx 下配置 二级域名. 一. 域名解析 首先你需要去到你的 域名服务商那边 进 ...
- 在阿里云 ECS 搭建 nginx https nodejs 环境(三、nodejs)
在阿里云 ECS 搭建 nginx https nodejs 环境(三.nodejs) 在阿里云 ECS 搭建 nginx https nodejs 环境(三.nodejs) 第一步 指定版本源 执行 ...
- 阿里云Centos+Django+Nginx+uWSGI
针对系统中自带的Python2.7版本 1.安装python-devel yum install python-devel 2.安装uwsgi pip install uwsgi 3.测试uwsgi是 ...
- 阿里云安装配置nginx
一.简介 Nginx是一款轻量级的网页服务器.反向代理服务器.相较于Apache.lighttpd具有占有内存少,稳定性高等优势.它最常的用途是提供反向代理服务. 二 .安装 1.准备工作 Nginx ...
- 在阿里云 ECS 搭建 nginx https nodejs 环境 (一、 nginx)
首先介绍下相关环境.软件的版本 1.阿里云 ECS . ubuntu-14.04.5 LTS 2.nginx 版本 1.9.2 可能会遇到的问题: 一.在 ssh 服务器上的时候,提示 这个时候需要将 ...
- 阿里云服务器安装配置nginx
服务器: 阿里云 Alibaba Cloud Linux 下载 进入到预计存放nginx的目录,比如:/usr/local/ 下载nginx压缩包,并解压 cd /usr/local wget htt ...
- 阿里云Centos配置iptables防火墙
虽说阿里云推出了云盾服务,但是自己再加一层防火墙总归是更安全些,下面是我在阿里云vps上配置防火墙的过程,目前只配置INPUT.OUTPUT和FORWORD都是ACCEPT的规则 一.检查iptabl ...
- 阿里云CentOS配置iptables防火墙[转]
虽说阿里云推出了云盾服务,但是自己再加一层防火墙总归是更安全些,下面是我在阿里云vps上配置防火墙的过程,目前只配置INPUT.OUTPUT和FORWORD都是ACCEPT的规则 一.检查iptabl ...
- Ali_Cloud++:阿里云Centos配置iptables防火墙教程
虽说阿里云推出了云盾服务,但是自己再加一层防火墙总归是更安全些,下面是我在阿里云vps上配置防火墙的过程,目前只配置INPUT.OUTPUT和FORWORD都是ACCEPT的规则 1):检查iptab ...
随机推荐
- AE开发中关于 “无法嵌入互操作类型.........请改用适用的接口”问题的解决方法
最近开始使用VS2010,在引用COM组件的时候,出现了“无法嵌入互操作类型……,请改用适用的接口”的错误提示. 查阅资料,找到解决方案,记录如下: 选中项目中引入的dll,鼠标右键,选择属性,把“嵌 ...
- Team Foundation Server (TFS) 2015 安装指导
1. 概述 微软于8月6日发布了大家期待已久的TFS 2015正式版, https://www.visualstudio.com/en-us/news/tfs2015-vs.aspx ,新版本包含的大 ...
- Exynos4412的外部中断是如何安排的?
作者 彭东林 pengdonglin137@163.com 平台 Linux4.9 tiny4412 概述 结合tiny4412开发板分析一下Exynos4412的外部中断是如何组织的. ...
- Spring整合Disruptor
原文:https://segmentfault.com/a/1190000014469173 什么是Disruptor 从功能上来看,Disruptor 是实现了“队列”的功能,而且是一个有界队列.那 ...
- java基础之static(静态)
静态的属性.方法等属于类而不是对象. 静态的方法能够由类直接调用,不须要将类实例化. 本篇主要说明:1.态的代码.成员变量要比构造方法先运行. 2. 子类的构造方法会默认去调用父类的不带參数的构造方法 ...
- 递归搜寻NSString中重复的文本
递归搜寻NSString中重复的文本 效果 源码 https://github.com/YouXianMing/iOS-Project-Examples 中的 StringRange 项目 // // ...
- 低版本系统兼容的ActionBar(五)修改ActionBar的全套样式,从未如此简单过
设定ActionBar的样式,是我们必须掌握的技能,在之前我们可能都需要一行一行的写代码,然后在模拟器上测试效果,但是现在我们有个一个很棒的工具来设定样式.设定ActionBar样式的工作从 ...
- Memcache的安装与配置
因为单位要求修复Memcached的DDOS漏洞,整理了本文.之前的文章防止Memcached的DDOS攻击另外一个思路 提到了解决方案,我们使用的版本较低,因此需要对 Memcached 进行升级, ...
- IaaS,SaaS,PaaS的区别
你一定听说过云计算中的三个“高大上”的你一定听说过云计算中的三个“高大上”的概念:IaaS.PaaS和SaaS,这几个术语并不好理解.不过,如果你是个吃货,还喜欢披萨,这个问题就好解决了!好吧 ...
- hdu 2544 单源最短路问题 dijkstra+堆优化模板
最短路 Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submis ...