简介

大家好,今天我们来跟大家聊聊NGINX优化和安装的一些事情。
我们都知道nginx是一个网站服务器,和Apache一样。选择Nginx就是因为其的轻量化特性以及并发能力高,所以说nginx才成为我们热门网站服务器!


Nginx的安装包获取

进入Nginx官网,找到nginx稳定版本的下载地址
image.png
如图所示,箭头所指的即为该稳定版本的Nginx编译源码版本
我们复制其地址:https://nginx.org/download/nginx-1.18.0.tar.gz
使用wget进行安装,如果没有Wget工具请使用yum安装
yum install wget
获取安装包:wget https://nginx.org/download/nginx-1.18.0.tar.gz
解压:tar -xvzf nginx-1.18.0.tar.gz

安装编译依赖库

  1. yum -y install gcc gcc-c++ autoconf automake
  2. # gcc c语言编译器
  3. # gcc-c++ c++语言编译器
  4. # autoconf automake 用于make编译的工具
  5. yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel
  6. # zlib :nginx提供gzip模块,需要zlib库支持
  7. # openssl :nginx提供ssl功能
  8. # pcre :支持地址重写rewrite功能

修改网站服务器Nginx服务器本身对外显示信息

首先进入nginx服务器目录
cd nginx-1.18.0
编辑该文件输入命令
若没有改编辑器请使用yum命令安装vim :yum install vim -y
** vim src/core/nginx.h**
在13行左右的位置,查看数字行数,在Vim编辑器中输入**:set number**``**<br />

  1. #define NGINX_VERSION "8.5.5.2" #此行修改的是你想要的版本号
  2. #define NGINX_VER "AIPICSERVER/" NGINX_VERSION #此行修改的是你想修改的软件名称

修改http请求头返回版本号信息

vim src/http/ngx_http_header_filter_module.c
改:49 static char ngx_http_server_string[] = “Server: nginx” CRLF;
为:49 static char ngx_http_server_string[] = “Server: AIPICSERVER” CRLF;

http错误码的返回隐藏

有时候我们页面程序出现错误,Nginx会代我们返回相应的错误代码,回显的时候,会带上nginx和版本号,我们把他隐藏起来
such as:
image.png
修改命令:vim src/http/ngx_http_special_response.c
把源代码的的这两段删去然后再把如下代码复制进去,这里要注意部署时有一个像下列代码一样的,例如:
这里有一个构件时的版本代码,不要对这段代码进行更改,如果更改在make install时会编译报错,需要重新执行步骤!

  1. static u_char ngx_http_error_build_tail[]=
  1. static u_char ngx_http_error_full_tail[] =
  2. "<hr><center>" NGINX_VER "</center>" CRLF
  3. "</body>" CRLF
  4. "</html>" CRLF
  5. ;
  6. static u_char ngx_http_error_tail[] =
  7. "<hr><center>XWS</center>" CRLF
  8. "</body>" CRLF
  9. "</html>" CRLF
  10. ;

修改完成!


Nginx的安装

在保护代码更改成功后,我们进入我们的安装环节!
在nginx解压代码的主目录下进行编译生成make文件,也就是有/bin目录的那个文件夹

  1. ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_realip_module --with-http_gzip_static_module --with-pcre #检查编译环境
  2. # 参数说明:
  3. # --prefix=/usr/local/nginx 指定安装路径
  4. # --user=nginx --group=nginx 指定运行nginx进程的用户和组
  5. # --with-http_ssl_module 支持ssl加密
  6. # --with-http_realip_module 此模块支持显示真实来源IP地址,主要用于NGINX做前端负载均衡服务器使用
  7. # --with-http_gzip_static_module 这个模块指定压缩
  8. # --with-pcre 此模块支持rewrite功能

生成编译文件后在该文件夹下运行:
make && make install 没有报错,离开目录即为安装成功
同时我们需要创建一个nginx用户:

  1. useradd -s /sbin/noligin -M nginx

然后再启动一下nginx
运行该命令启动Nginx

  1. /usr/local/nginx/sbin/nginx

停止命令

  1. /usr/local/nginx/sbin/nginx -s stop

请确保安全组中的80和443安全组处于打开状态且没有被占用!


最终效果

image.png
image.png
网站根目录:/usr/local/nginx/html