深入浅出Nginx之一【简介与环境搭建】

【Nginx简介】
Nginx(发音同engine x),是来自于俄罗斯的高性能web服务器和反向代理服务器。在国内有新浪、网易、豆瓣、迅雷等多家网站使用。尴尬
负载均衡(load balance):使用Nginx作为代理服务器,接收用户请求,并将其“均匀地转发”给多台内部web服务器,不会出现负载集中在某台服务器的现象。
反向代理(reverse proxy):标准的代理是用户使用代理软件访问互联网上的多台web服务器,而反向代理指的是多个用户使用代理服务器访问多台内部web服务器的模式。
使用Nginx的优点:
支持高并发访问:在生产环境下支持高达5万以上的并发连接数。大笑
内存消耗少:在5万并发连接环境下,开启10个worker进程,仅仅消耗150M内存。
容易配置:配置文件便于学习、阅读。
成本低廉:Nginx是免费的开源软件,无须付费。
支持rewrite重写规则:Nginx使用pcre进行正则表达式匹配,根据请求域名、url的不同,将http请求分发给不同的后端服务器。
内建健康检查功能:Nginx能够检测某台后端服务器是否宕机,不影响用户访问。
节省带宽:可以对静态资源进行gzip高效压缩,而通常浏览器都具有gzip解压缩功能。
性能稳定:使用Nginx作为反向代理服务器,有效避免了网络攻击对后端服务器的影响,提高了安全性。

【安装Nginx】
一. 安装依赖包:哭
1. 安装pcre:对正则表达式的支持。
tar -zxvf pcre-8.33.tar.gz
Shell代码 收藏代码
cd pcre-8.33
./configure --prefix=/usr/local/pcre
make && make install
2. 安装zlib:对gzip压缩的支持。
Shell代码 收藏代码
tar -zxvf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure --prefix=/usr/local/zlib
make && make install
3. 安装openssl:对ssl协议的支持。
Shell代码 收藏代码
tar -zxvf openssl-1.0.0.tar.gz
cd openssl-1.0.0
./config --prefix=/usr/local/openssl
make && make install
二. 安装Nginx:酷
1. 创建日志目录:
Shell代码 收藏代码
mkdir -p /opt/nginx/logs
2. 解压、配置:
Shell代码 收藏代码
tar -zxvf nginx-1.6.0.tar.gz
cd nginx-1.6.0
./configure --prefix=/usr/local/nginx \
--error-log-path=/opt/nginx/logs/error.log \
--http-log-path=/opt/nginx/logs/access.log \
--with-pcre=/software/pcre-8.33 \
--with-zlib=/software/zlib-1.2.8 \
--with-http_ssl_module \
--with-openssl=/software/openssl-1.0.0 \
--with-http_stub_status_module \
--with-http_realip_module \
--with-http_gzip_static_module \
--without-http_fastcgi_module \
--without-http_memcached_module \
--without-http_map_module \
--without-http_geo_module \
--without-http_autoindex_module \
--with-poll_module
说明:
1. 使用\:表示多个物理行同属一个逻辑行.
2. 日志文件:error.log存放Nginx的错误日志,access.log存放用户访问日志.
3. 依赖关系:pcre、zlib、openssl需要设置为源码位置,而不是安装位置.
3. 编译、安装:
Shell代码 收藏代码
make && make install

【最小配置】吐舌头
1. 修改Nginx启动端口号:修改监听端口号为8080,因为只有root账号能够使用0-1024之间的端口号.
Shell代码 收藏代码
vi /usr/local/nginx/conf/nginx.conf
listen 8080;
2. 防火墙设置:开放8080端口
Shell代码 收藏代码
su - root
vi /etc/sysconfig/iptables
追加如下内容:
Shell代码 收藏代码
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
重启网卡:
Shell代码 收藏代码
service iptables restart

【启动、关闭】惊讶
1. 启动nginx:并指定配置文件,参数-c为configure
Shell代码 收藏代码
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
2. 关闭nginx:参数-s为signal
Shell代码 收藏代码
#等待worker进程处理完用户的当前请求,再进行关闭
/usr/local/nginx/sbin/nginx -s quit
#快速关闭
/usr/local/nginx/sbin/nginx -s stop
3. 使用kill命令关闭:关闭主进程(master process),从进程(worker process)随之消亡.
Shell代码 收藏代码
ps -ef | grep nginx
kill 21531
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值