一、官网下载 nginx 安装包

我这里安装的版本:nginx-1.15.12.tar.gz

Nginx 官网下载地址:nginx: download

二、在/usr/local下新建nginx文件夹,并解压nginx-1.15.12.tar.gz到该文件夹下

[root@ryx ~]# mkdir /usr/local/nginx
[root@ryx ~]# tar -zxvf nginx-1.15.12.tar.gz -C /usr/local/nginx

三、安装环境

[root@ryx ~]# yum -y install gcc gcc-c++ automake autoconf libtool openssl openssl-devel gd gd-devel pcre pcre-devel make

 

如果出现下面这种错误,先去更新yum

 make: *** No rule to make target `build', needed by `default'. Stop.

yum update

四、编译安装

[root@ryx ~]# cd /usr/local/nginx/nginx-1.15.12

./configure 用来检测系统配置,生成makefile文件,以便可以用make、make install来编译和安装,检测环境配置是否完成,例如上面的gcc配置等。

提示:

不自定义配置路径的话,默认在当前目录下配置安装。执行该命令: ./configure

如果有自定义配置路径需求的话,执行该命令: ./configure --prefix=/usr/local/nginx2

[root@ryx nginx-1.15.12]# ./configure

 为了以后压缩方便,再执行这个命令,安装 gzip_static、http_ssl_module 模块

第一次安装,可以直接make&make install

但是之前就安装过ngixn,再次补充安装模块时 注意只make,不要make install了 ,因为会覆盖之前的

[root@ryx nginx-1.15.12]# ./configure --with-http_gzip_static_module
[root@ryx nginx-1.15.12]# ./configure --with-http_ssl_module
# 编译
[root@ryx nginx-1.15.12]# make
# 安装
[root@ryx nginx-1.15.12]# make install

 

linux nginx 默认只想 index nginx for linux_linux

 如果出现下面这种错误,就是前几步的时候没有更新yum,所以需要更新yum,并且重新到 ./configure 那一步重新走一遍

make: *** No rule to make target `build', needed by `default'. Stop.

yum update

安装成功后,就可以将压缩包、解压缩的文件夹删除

删除 nginx-1.15.12.tar.gz 压缩包

如果不用下载其他模块的话,是否需要删除 /usr/local/nginx下的 nginx-1.15.12 文件夹??

    1.还需要继续下载其他模块,所以这个文件夹暂时先保留

    2.如果只是简单使用nginx,不需要其他模块的话,那就删了吧~~~

五、启动 Nginx

找到nginx安装地址 /sbin 路径下的nginx启动文件,执行该启动文件

# 1. 加载默认ngixn安装路径下的nginx.conf配置文件,并启动ngixn
[root@ryx ~]# /usr/local/nginx/sbin/nginx

# 2. 加载指定nginx.conf配置文件,并启动ngixn
[root@ryx ~]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx2/conf/nginx.conf

温馨提示,不理解原理的话,这里容易出错:

如果nginx自定义路径的话,只需要把路径修改成自定义路径的路径即可

在 ./configure 的时候自定义了路径( ./configure --prefix=/usr/local/ngixn2 ),就需要执行下面的命令进行启动

启动代码格式:nginx安装目录地址下的执行文件  -c  nginx自定义的配置文件地址

例如:/usr/local/nginx/sbin/nginx -c /usr/local/nginx2/conf/nginx.conf

这时候nginx就会根据自定义的/usr/local/nginx2/conf/nginx.conf配置进行执行,而不是默认的/usr/local/nginx/conf/nginx.conf

启动ngixn后,自动生成各种配置 

六、重启Nginx

# 1. 加载默认ngixn安装路径下的nginx.conf配置文件,并重新启动
[root@ryx ~]# /usr/local/nginx/sbin/nginx -s reload

七、关闭Nginx

 方法一:查看进程号,并杀死进程

[root@ryx ~]# ps -ef|grep nginx

[root@ryx ~]# kill -9 进程号

方法二:查看进程号,并停止

[root@ryx ~]# ps -ef|grep nginx

[root@ryx ~]# kill -TERM 进程号
或者
[root@ryx ~]# kill -INT 进程号

方法三:强制关闭Nginx

[root@ryx ~]# pkill -9 nginx

八、删除nginx

通过命令找到Linux下所有的nginx文件,然后删除ngixn相关文件

[root@ryx ~]# sudo find / -name nginx*

执行完上面的命令后,再删除 /usr/local/nginx 文件夹即可

九、修改简单配置

1. 输入 ip + 端口号 默认打开nginx安装路径下/html文件夹中的 myhtml.html

修改index的配置

root:资源存储路径

index:输入ip+端口默认打开的资源 ,默认80端口

server {
    listen 80;
    server_name localhost;

    location / {
        root   html;
        index  myhtml.html myhtml.htm;
    }
}

2. 如何实现在浏览器的网址框中用域名代替ip地址

例如: http://127.0.0.1/index.html 改成 http://www.baidu.com/index.html

想将ip改成域名显示,域名必须先绑定服务器

域名可以从某里云上购买。。。

server {
	server_name  www.baidu.com;
}

3. 反向代理

server {
	listen 80;
	server_name www.baidu.com;
	
	server_name_in_redirect off;
	proxy_set_header Host $host:$server_port;
	proxy_set_header X-Real-IP $remote_addr;
	proxy_set_header REMOTE-HOST $remote_addr;
	proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
	
	location / {
		root   html;
		index  index.html index.htm;
		proxy_pass http://www.baidu.com:8089;
	}

}