阿里云centos配置nginx和nodejs

简介: 今天新买了阿里云,想把网站跑起来,于是记录跑起来的过程1.购买域名2.购买解析3.购买ecs主机4.ssh登录主机5.安装vsftpd6.配置ftp用户、文件夹、权限7.安装nginx/nodejs8.

今天新买了阿里云,想把网站跑起来,于是记录跑起来的过程

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

目录
相关文章
|
15天前
|
应用服务中间件 BI nginx
Nginx的location配置详解
【10月更文挑战第16天】Nginx的location配置详解
|
8天前
|
应用服务中间件 API nginx
nginx配置反向代理404问题
【10月更文挑战第18天】本文介绍了使用Nginx进行反向代理的配置方法,解决了404错误、跨域问题和302重定向问题。关键配置包括代理路径、请求头设置、跨域头添加以及端口转发设置。通过调整`proxy_set_header`和添加必要的HTTP头,实现了稳定的服务代理和跨域访问。
nginx配置反向代理404问题
|
2天前
|
应用服务中间件 网络安全 PHP
八个免费开源 Nginx 管理系统,轻松管理 Nginx 站点配置
Nginx 是一个高效的 HTTP 服务器和反向代理,擅长处理静态资源、负载均衡和网关代理等任务。其配置主要通过 `nginx.conf` 文件完成,但复杂设置可能导致错误。本文介绍了几个开源的 Nginx 可视化配置系统,如 Nginx UI、VeryNginx、OpenPanel、Ajenti、Schenkd nginx-ui、EasyEngine、CapRover 和 NGINX Agent,帮助简化和安全地管理 Nginx 实例。
|
12天前
|
缓存 负载均衡 应用服务中间件
Nginx配置
【10月更文挑战第22天】在实际配置 Nginx 时,需要根据具体的需求和环境进行调整和优化。同时,还需要注意配置文件的语法正确性和安全性。
31 7
|
10天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
46 2
|
21天前
|
前端开发 JavaScript 应用服务中间件
终极 Nginx 配置指南
本文介绍了Nginx的基本配置及其优化方法。首先,通过删除注释简化了Nginx的默认配置文件,使其更易于理解。接着,文章将Nginx配置文件分为全局块、events块和http块三部分进行详细解释。此外,还提供了如何快速上线网站、解决前端history模式404问题、配置反向代理、开启gzip压缩、设置维护页面、在同一IP上部署多个网站以及实现动静分离的具体配置示例。最后,附上了Nginx的基础命令,包括安装、启动、重启和关闭等操作。
|
22天前
|
JavaScript 前端开发 应用服务中间件
vue前端开发中,通过vue.config.js配置和nginx配置,实现多个入口文件的实现方法
vue前端开发中,通过vue.config.js配置和nginx配置,实现多个入口文件的实现方法
111 0
|
应用服务中间件 nginx Docker
【实战】基于Nginx、Node.js和Redis的Docker工作流
本文讲的是【实战】基于Nginx、Node.js和Redis的Docker工作流,【编者的话】本文是一篇实践性很强的文章。作者通过一个完整的示例讲述了构建一个基于Nginx、Node.js、Redis的应用服务的Docker流程。推荐所有Docker使用者阅读,并根据文章实践。
2501 0
|
22天前
|
缓存 负载均衡 安全
Nginx常用基本配置总结:从入门到实战的全方位指南
Nginx常用基本配置总结:从入门到实战的全方位指南
207 0
|
27天前
|
应用服务中间件 Linux nginx
Jetson 环境安装(四):jetson nano配置ffmpeg和nginx(亲测)之编译错误汇总
这篇文章是关于在Jetson Nano上配置FFmpeg和Nginx时遇到的编译错误及其解决方案的汇总。
72 4