我为什么要学习Nginx

第一

​ 想让博客网站的更加安全使用https:zddisgood.top而不是http:zddisgood.top。以方便。

百度收录失败

第二

​ 因为网站提交到百度收录但是上图不是我要的效果,而我想要的效果是红色框框里的变成https:zddisgood.top也可以用site:zddisgood.top这种方式来验证,不过大多数人都不会这种方式。说的专业一点就是做SEO。

Nginx介绍

nginx是web服务器是,有代理的功能。

nginx安装

安装前的准备。有GCC编译器,PCRE库,zlib库,Openssl开发库。

通过yum方式安装

​ 通过官网资料一步步安装http://nginx.org/en/linux_packages.html#RHEL-CentOS。第一种yum方式下载的会自动配置环境变量的并且,conf目录和html目录不在同一个路径下,通过nginx -V可以看出了。而第二种方式是解压tar包。

第一种yum方式下载

​ yum方式的html展示的路径是在/etc/nginx/conf.d的default.conf 中定义的。所以关于nginx的页面跳转都在/usr/share/nginx/html目录下。如下图所示

yum方式下载的nginx的html展示路径

通过nginx源码解压的方式

  1. 首先去官网下载tar压缩包https://nginx.org/download/nginx-1.20.2.tar.gz。
  2. 新建一个目录存放这个压缩包并解压,我的习惯放在/opt/nginxPackage下。使用tar -zxf nginx-1.20.2.tar.gz压缩

nginx压缩包路径

解压后文件情况

第三点在/opt/nginxPackage/nginx-1.20.2。执行配置命令./configure

./configure执行以后

​ 第四点执行编译和安装 make & make install ,编译成功以后的nginx目录默认放在/usr/local/nginx/下。所以nginx的解压目录/opt/nginxPackage/nginx-1.20.2和nginx的安装目录/usr/local/nginx/不在同一个地方不习惯。

image-20220321121007219

简单安装缺少环境变量

不同

​ 最主要的不同是简单源码安装的时候执行./configure时候没有配置全局变量,执行./configure --help可以看出来nginx相关配置

nginx的相关配置

Nginx复杂源码安装

​ 和上面简单源码安装不同的地方在于./configure的语句不一样。在配置时指向Nginx的安装目录;指向(执行)程序文件(nginx)的路径;指向Nginx动态模块安装目录;指向配置文件(nginx.conf)的路径;指向配置文件(nginx.conf)的路径;指向错误日志文件的路径;指向访问日志文件的路径;指向Nginx启动后进行ID的文件路径;指向Nginx锁文件的存放路径。

1
2
3
4
5
6
7
8
./configure --prefix=/usr/local/nginx \
--sbin-path=/usr/local/nginx/sbin/nginx \
--modules-path=/usr/local/nginx/modules \
--conf-path=/usr/local/nginx/conf/nginx.conf \
--error-log-path=/usr/local/nginx/logs/error.log \
--http-log-path=/usr/local/nginx/logs/access.log \
--pid-path=/usr/local/nginx/logs/nginx.pid \
--lock-path=/usr/local/nginx/logs/nginx.lock --with-http_ssl_module

但是查看nginx配置信息必须在/usr/local/nginx/sbin/目录下执行./nginx -v./nginx -V 查看信息。

编译前设置了相关路径

编译没有配置