一、官网下载 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
如果出现下面这种错误,就是前几步的时候没有更新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;
}
}