学习nginx小记

84 阅读3分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第1天

Nginx 是一个高性能的HTTP和反向代理web服务器,同时提供了IMAP/POP3/SMTP服务。

Nginx的稳定性、功能集、示例配置文件和低系统资源的消耗是他的优点。

一、相关知识

1、Http代理,反向代理:作为web服务器最常用的功能之一,尤其是反向代理。

Nginx在做反向代理时,提供性能稳定,并且能够提供配置灵活的转发功能。Nginx可以根据不同的正则匹配,采取不同的转发策略,比如图片文件结尾的走文件服务器,动态页面走web服务器,只要你正则写的没问题,又有相对应的服务器解决方案,你就可以随心所欲的玩。并且Nginx对返回结果进行错误页跳转,异常判断等。如果被分发的服务器存在异常,他可以将请求重新转发给另外一台服务器,然后自动去除异常服务器。

2、负载均衡

nginx提供的负载均衡策略有2种:内置策略和扩展策略。内置策略为轮询,加权轮询,IP hash。

二、安装(参考CSDN:t.csdn.cn/O6K1k

1、下载安装包

cd /usr/local/src/
wget http://nginx.org/download/nginx-1.6.2.tar.gz

2、Nginx所需要的依赖包

gcc
$ sudo apt-get install gcc
zlib
$ sudo apt-get install zlib1g-dev
pcre
$ sudo apt-get install libpcre3 libpcre3-dev
openssl
$ sudo apt-get install openssl libssl-dev

检查依赖文件是否安装成功

pcre-config --version

3、压缩并安装

tar zxvf nginx-1.6.2.tar.gz
cd nginx-1.6.2
./configure
make
make install

出现问题可参考:t.csdn.cn/emtfB

4、启动

在/usr/local/nginx/sbin下执行./nginx便可以启动

浏览器访问IP:80端口号可以看到如下的内容

启动之后查看受否启动成功

ps -ef | grep nginx

三、部署项目

1、打包项目

对现有的docusaurus进行项目打包

npm run build

将生成的打包项目移动到/nginx/local/

mv /home/wang/my-website/build/ /usr/local/nginx/html/

这也就将项目打包到Nginx服务器里面了

2、修改Nginx配置

可以看到在/build文件夹中有一个index.html索引文件

打开/usr/local/nginx/conf/下的nginx.conf配置文件(我使用的是vscode打开的文件),修改该配置文件的内容如下:

修改完之后保存修改,检查配置并重新启动

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

此时在浏览器中访问ip便可以看到自己搭建的网站了

至此,搭建完成。

后续维护的思路是:在my-website项目中修改和完善文档内容,然后通过npm run build打包上传到nginx服务器,再启动nginx这样便实现了对静态网页文档的访问。

add:nginx 配置文件时尽量不要动nginx.conf文件,可以在XX.enable和XX.available里面配置文件,然后用include 路径/XX.enable和include 路径/XX.available两条语句引用外部的配置文件,这样可以防止因为自己配置了nginx.conf文件导致其他使用者出现异常,这样做起到了隔离作用,相互互不干扰。(参考:t.csdn.cn/zaBKQ