目录
1、较新的Linux内核版本2.6以上才能够支持。
2、需要安装gcc编译器,g++编译器
//工具包包含了gcc和g++编译器
//Centos中安装
sudo yum groupinstall "Development Tools"
//工具包包含了gcc和g++编译器
//Ubuntu中安装
sudo apt-get install build-essential
3、安装pcre库,因为Nginx的Rewrite模块和HTTP核心模块会使用到pcre正则表达式语法,安装pcre和pcre-devel。
//Centos中安装PCRE:
sudo yum install pcre pcre-devel
//Ubuntu中安装PCRE:
sudo apt-get install libpcre3 libpcre3-dev
4、安装zlib库,它提供了压缩解压缩功能,在Nginx的各种模块中需要使用gzip压缩,安装zlib和zlib-devel。
//Centos中安装zlib:
sudo yum install zlib zlib-devel
//Ubuntu中安装zlib:
sudo apt-get install zlib1g zlib1g-dev
5、安装OpenSSL库,服务器提供安全网页时会用到OpenSSL库,安装openssl和openssl-devel。
//Centos中安装OpenSSL
sudo yum install openssl openssl-devel
//Ubuntu中安装OpenSSL
sudo apt-get install openssl libssl-dev
1、访问Nginx官网,获取到最新稳定版本(Stable version)下载连接
获取到下载链接:
??????http://nginx.org/download/nginx-1.24.0.tar.gz
?2、在linux中下载Nginx
sudo wget http://nginx.org/download/nginx-1.24.0.tar.gz
3、解压下载好的Nginx包
sudo tar -zxvf nginx-1.24.0.tar.gz?
4、进入解压后的目录,可以看到Nginx已经成功下载并解压了
????????????????cc目录:检查编译的脚本
????????????????lib目录:检查依赖库的脚本
? ? ? ? ? ? ? ? os目录:检查操作系统类型的脚本
? ? ? ? ? ? ? ? type目录:检测平台类型的脚本
? ? ? ? ? ? ? ? core目录:存放核心代码
? ? ? ? ? ? ? ? event目录:even(事件)模块相关代码
? ? ? ? ? ? ? ? http目录:http(web服务)模块相关代码
? ? ? ? ? ? ? ? mail目录:邮件模块相关代码
? ? ? ? ? ? ? ? misc目录:包括一些测试脚本、文档或其他辅助文件
? ? ? ? ? ? ? ? os目录:操作系统相关代码
? ? ? ? ? ? ? ? stream目录:流处理相关代码
1、使用configure脚本来进行编译之前的配置工作
执行命令?sudo ./configure
?
?执行之后,会发现多了Makefile文件和objs目录。
objs目录:执行了configure生成的中间文件目录,该目录存在一个名为ngx_modules.c文件,它? ? ? ? ? ? ? ? ? ? ? 决定了编译Nginx的时候有哪些模块会被编译到nginx里面。
Makefile文件:执行了configure脚本生成的编译规则文件 ,执行make命令时用到。
2、使用make命令来编译,生成可执行文件。
sudo make
3、使用make命令开始安装,安装完成后可以在/user/local/目录下看到nginx目录,它默认安装在这个路径下。
sudo make install
?
?
进入到该nignx目录中,会发现四个目录:
1、权限进入到sbin目录中,使用sudo ./nginx 命令启动(启动需要管理员权限)
sudo ./nginx
查看是否启动成功
ps -ef|grep nginx
2、可以看到已经启动成功了,下一步查看是否可以正常使用,可以在Windows下的浏览器去访问linux的ip,会出现欢迎页面。如果发现访问不了,使用sudo netstat -ntlp命令查看80端口是否分配给nginx。
如果nginx服务启动和端口一切正常,那么就是防火墙的问题。输入命令:sudo systemctl restart firewalld.service? 重启防火墙
.输入命令 :sudo systemctl stop firewalld.service 关闭防火墙
然后就可以正常访问了。