继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

阿里云部署 5.域名、DNS、nginx

慕盖茨0596843
关注TA
已关注
手记 16
粉丝 1
获赞 10

更多文章欢迎关注微信公众号 前端阅读室

域名

虽然通过ip地址可以直接访问你的网站,但是我们很少看到网站是通过ip地址访问的,一般网站都会提供域名。域名直观易记,且在用户访问的域名不改变的情况下,解析的ip地址可以更改。

域名申请可以去万网购买,国家规定了网站需要备案才可以访问,我在阿里云走的备案流程,在阿里云APP填写、上传相应信息即可,以前的流程需要邮寄幕布什么的了,现在只需要在线上操作即可。阿里云的流程走得是比较快的,最终会提交到管局,管局流程就需要等待一阵子了(5~20个工作日)。我的域名从开始备案到备案成功,流程约走了2周。

DNS

域名需要解析到ip地址,DNS做的就是这个工作。它可以将易于管理识别的域名转换为计算机用于互连通信的数字IP地址,从而将用户的访问路由到相应的网站或应用服务器。

同样,我使用了阿里云的DNS解析服务。在云解析DNS域名控制台-域名解析,点击添加域名。

再添加解析

具体配置如下

配置完成后访问域名就会解析到记录值所填写的ip地址了。

nginx

虽然域名解析到了ip地址(服务器),但是默认的端口是80(所以请确保服务器的80端口设置了安全组规则,具体可以参考之前的文章介绍过的方法)。我们一般服务监听的端口不是80怎么办?其实很简单,我们只需要简单的配置一下nginx就可以了。

接下介绍一下在阿里云服务器上安装和使用nginx。

安装

首先安装PCRE pcre-devel 和Zlib

PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括perl兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装 pcre库,pcre-devel是使用pcre开发的一个二次开发库。nginx也需要此库。命令:


yum install -y pcre pcre-devel

zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip,所以需要在Centos上安装zlib库。


yum install -y zlib zlib-devel

安装GCC和OpenSSL


yum install gcc-c++

yum install -y openssl openssl-devel

现在我们开始安装nginx,这里我安装的是1.14.0版本


wget -c https://nginx.org/download/nginx-1.14.0.tar.gz

解压并进入nginx目录


tar -zxvf nginx-1.14.0.tar.gz

cd nginx-1.14.0

使用nginx的默认配置


./configure

编译安装


make

make install

查找安装路径:


[root@iZ8vbfhrv1vsbp44n9fdtoZ ~]# whereis nginx

nginx: /usr/local/nginx

进入sbin目录,可以看到有一个可执行文件nginx,直接./执行就OK了。


[root@iZ8vbfhrv1vsbp44n9fdtoZ ~]# cd /usr/local/nginx

[root@iZ8vbfhrv1vsbp44n9fdtoZ nginx]# ls

client_body_temp fastcgi_temp logs sbin uwsgi_temp

conf html proxy_temp scgi_temp

[root@iZ8vbfhrv1vsbp44n9fdtoZ nginx]# cd sbin

[root@iZ8vbfhrv1vsbp44n9fdtoZ sbin]# ls

nginx

[root@iZ8vbfhrv1vsbp44n9fdtoZ sbin]# ./nginx

配置开机自启动

在rc.local增加启动代码就可以。增加一行 /usr/local/nginx/sbin/nginx


vi /etc/rc.local

设置执行权限:


chmod 755 rc.local

配置

nginx配置文件修改


vim /usr/local/nginx/conf/nginx.conf

修改原配置文件的部分内容


server {

listen 80;

server_name localhost;

  

#charset koi8-r;

  

#access_log logs/host.access.log main;

  

location / {

root /opt/nodejs/blog-server/static/blog;

index index.html index.htm;

}

  

#error_page 404 /404.html;

  

# redirect server error pages to the static page /50x.html

#

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

  

# proxy to the blog server

location /blog {

proxy_pass http://0.0.0.0:3000;

}

}

  

这样访问80端口根路径就会请求index.html文件,匹配/blog路径的请求会被转发到本地服务器的3000端口上。

配置完毕后,可以执行命令检查一下配置是否有错误


[root@iZ8vbfhrv1vsbp44n9fdtoZ conf]# /usr/local/nginx/sbin/nginx -t

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok

nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

最后重启一下nignx就可以了


/usr/local/nginx/sbin/nginx -s reload

此时你访问域名,就会按照nginx配置请求前后端资源。访问我的网站(http://www.readingblog.cn/#/blog/article/95) 试试吧。

更多文章欢迎关注微信公众号 前端阅读室

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP