nginx安装配置

nginx安装配置

nginx安装

1、环境
#在安装nginx前首先要确认系统中安装了gcc、pcre-devel、zlib-devel、openssl-devel

安装依赖

yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel

2、配置环境(离线安装,如果yum安装装了就不用了)

#安装 pcre-devel
cd /usr/local/src/
#上传,解压 pcre-8.35.tar.gz

下载: http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz)

cd pcre-8.35
#编译安装
./configure
make && make install
#查看pcre版本
pcre-config --version

3、安装 Nginx

#指定文件路径
./configure --prefix=/u01/nginx --conf-path=/u01/nginx/nginx.conf --error-log-path=/u01/nginx/error.log --http-log-path=/u01/nginx/access.log --pid-path=/u01/nginx/nginx.pid --lock-path=/u01/nginx/nginx.lock --user=nginx --group=nginx --with-http_ssl_module --with-http_v2_module --with-http_dav_module --with-http_stub_status_module --with-threads --with-file-aio

#编译安装

make && make install

参数

--prefix=  指向安装目录。
--sbin-path=  指定执行程序文件存放位置。
--modules-path=  指定第三方模块的存放路径。
--conf-path= 指定配置文件存放位置。
--error-log-path=  指定错误日志存放位置。
--pid-path=  指定pid文件存放位置。
--lock-path=  指定lock文件存放位置。
--user=  指定程序运行时的非特权用户。
--group=  指定程序运行时的非特权用户组。
--builddir=  指向编译目录。
--with-rtsig_module  启用rtsig模块支持。
--with-select_module  启用select模块支持,一种轮询处理方式,不推荐在高并发环境中使用,禁用:--without-select_module。
--with-poll_module  启用poll模块支持,功能与select相同,不推荐在高并发环境中使用。
--with-threads 启用thread pool支持。
--with-file-aio  启用file aio支持。
--with-http_ssl_module 启用https支持。

4、查看
#查看版本

/u01/nginx/sbin/nginx -v

#nginx安装完成

#查看80端口有没有开启

firewall-cmd --query-port=80/tcp

#开启80端口

firewall-cmd --add-port=80/tcp --permanent

启动

启动 ./nginx -c /u01/nginx/nginx.conf
./nginx -c /u01/nginx/nginx.conf -s stop
./nginx -c /u01/nginx/nginx.conf -s reload
nginx编译安装之后,启动出现了:nginx: [emerg] getpwnam("nginx") failed
这个是因为我编译安装nginx的时候指定了--user=nginx和--group=nginx,去除就没事了
但是出于安全性考虑,还是用独立权限的账户运行(root权限太大,web渗透的时候可利用的机会太多了)

#执行下面这个
useradd -s /sbin/nologin -M nginx

配置
一、nginx只允许域名访问,禁止ip访问

这样做是为了避免其他人把未备案的域名解析到自己的服务器IP,而导致服务器被断网,我们可以通过禁止使用ip访问的方法,防止此类事情的发生。

修改配置文件nginx.conf两种方法:
1)在server段里插入如下正则:
listen 80;
server_name www.yuyangblog.net;
if ($host != 'www.yuyangblog.net'){
return 403;
}




2)添加一个server
新加的server(注意是新增,并不是在原有的server基础上修改)
server {
listen 80 default;
server_name _;
return 403;
}
#原来server里面插入:
listen 80;

二、反向代理

配置server里面
server {
listen 80;
server_name 192.168.32.135; #nginx地址


location ~ /edu/ {
root html;
proxy_pass http://192.168.32.136:8090;
index index.html index.htm;
}
location ~ /app/ {
root html;
proxy_pass http://192.168.32.136:8091;
index index.html index.htm;
}

三、负载均衡

在http块里配置,配置两个地方,upstream myserver,location
upstream myserver {
server 192.168.32.136:8090 weight = 1;
server 192.168.32.136:8091 weight = 1; #权重
}


server {
listen 80;
server_name 192.168.32.135;
location / {
root html;
proxy_pass http://myserver;
index index.html index.htm;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值