nginx在linux下安装(源码编译)
下载
官网:http://nginx.org/
下载:http://nginx.org/en/download.html
版本号第二位是偶数,表示是稳定版本。
安装
提前安装一些依赖,依赖一般是:xxx-devel
也可以先不安装,提示缺啥就安装啥
yum -y install pcre-devel openssl-devel
或者:yum -y install gcc gcc-c++ zlib zlib-devel pcre-devel openssl openssl-devel
把安装文件上传到服务器(也可以wget获取,wget http://nginx.org/download/nginx-1.16.1.tar.gz)
解压
tar -zxvf nginx-1.16.1.tar.gz
添加nginx用户,默认会添加一个同名的用户组(也可以不添加)
useradd nginx
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx
如果要ssl模块(也可以后续再加):./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module --with-http_ssl_module
下面看到配置概要,表示configure成功
此时,/usr/local/下还没有nginx
解压目录新增
make的时候,都在执行的objs/Makefile文件里面的命令
执行编译和安装:make && make install
最好分开执行,方便看是否成功
make,下面表示make成功
此时,/usr/local/下还没有nginx
安装,make install,其实是创建目录、复制文件
添加软连接
ln -s /usr/local/nginx/sbin/nginx /usr/sbin/,也可以软连接到/sbin下
检查:查看版本及已经安装的模块
Nginx http功能模块 模块说明 Ngx_http_core_module 包括一些核心的http参数配置,对应Nginx的配合为HTTP区块部分 Ngx_http_access_module 访问控制模块,用来控制网站用户对Nginx的访问 Ngx_http_gzip_module 压缩模块,对Nginx返回的数据压缩,属于性能优化模块 Ngx_http_fastcgi_module FastCGI模块,和动态应用相关的模块,例如PHP Ngx_http_proxy_module Proxy 代理模块 Ngx_http_upstream_module 负载均衡模块,可以实现网站的负载均衡功能及节点的健康检查 Ngx_http_rewrite_module URL地址重写模块 Ngx_http_limit_conn_module 限制用户并发连接数及请求数模块 Ngx_http_limit_req_module 根据定义的key限制Nginx请求过程的速率 Ngx_http_log_module 访问日志模块,以指定的格式记录Nginx客户访问日志等信息 Ngx_http_auth_basic_module web认证模块,设置web用户通过账号,密码访问Nginx Ngx_http_ssl_module ssl模块,用于加密的http连接如https Ngx_http_stub_status_module 记录Nginx基本访问状态信息等的模块
启动
在任意目录,执行nginx
如果没有添加软链接,就要这样启动
访问
如果是虚拟机安装,ifconfig查看ip
请求
也可以这样访问,curl 192.168.116.128:80
如果是阿里云安装,外网访问记得安全组开放端口,参考:https://www.cnblogs.com/uncleyong/p/12694334.html
上面显示的内容的位置:
根是html
root文件夹下的html文件夹中的文件,访问的就是index.html
日志
都有可读权限
常用命令
改了配置文件,要重启服务(重新加载配置文件):nginx -s reload
容易遇到的坑
第一:
解压后是源码,配置的时候,务必prefix到另外的路径;
configure、make、make install都是在解压后的源码目录执行。
第二:
没有创建nginx用户
nginx: [emerg] getpwnam("nginx") failed
参考:
http://www.runoob.com/linux/nginx-install-setup.html
__EOF__
关于博主:擅长性能、全链路、自动化、企业级自动化持续集成(DevTestOps)、测开等
面试必备:项目实战(性能、自动化)、简历笔试,https://www.cnblogs.com/uncleyong/p/15777706.html
测试提升:从测试小白到高级测试修炼之路,https://www.cnblogs.com/uncleyong/p/10530261.html
欢迎分享:如果您觉得文章对您有帮助,欢迎转载、分享,也可以点击文章右下角【推荐】一下!