Nginx入门笔记

什么是 Nginx
Nginx 是一款高性能的 http 服务器 / 反向代理服务器及电子邮件( IMAP/POP3 )代理服
务器。由俄罗斯的程序设计师
Igor Sysoev 所开发,官方测试 nginx 能够支支撑 5 万并发
链接,并且
cpu 、内存等资源消耗却非常低,运行非常稳定
Nginx 应用场景:
    1 http 服务器。 Nginx 是一个 http 服务可以独立提供 http 服务。可以做网页静态服
            务器。
    2 、虚拟主机。可以实现在一台服务器虚拟出多个网站。例如个人网站使用的虚拟主机。
    3 、反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户
            的请求时,需要用多台服务器集群可以使用
nginx 做反向代理。并且多台服务器可以平均
            分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。

Nginx Linux 下的安装
       第一步: 安装 gcc 的环境 执行命令联网自动下载
yum install gcc-c++
    第二步: PCRE(Perl Compatible Regular Expressions) 是一个 Perl 库,包括 perl 兼容的正则表达式
库。
nginx http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库。

yum install -y pcre pcre-devel
    第三步: zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib http 包的内容进行
gzip ,所以需要在 linux 上安装 zlib 库。

yum install -y zlib zlib-devel
    第四步: OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书
封装管理功能及
SSL 协议,并提供丰富的应用程序供测试或其它目的使用。 nginx 不仅支持
http 协议,还支持 https (即在 ssl 协议上传输 http ),所以需要在 linux 安装 openssl 库。

yum install -y openssl openssl-devel

  第五步:Nginx 正式安装

            把 nginx 的源码包 nginx-1.8.0.tar.gz 上传到 linux 系统

            解压缩

tar zxvf nginx-1.8.0.tar.gz
进入 nginx-1.8.0 目录 使用 configure 命令创建一 makeFile 文件。

./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \

--http-scgi-temp-path=/var/temp/nginx/scgi

执行后可以看到 Makefile 文件

下面是具体的命令参数含义

--prefix=/usr \ 指向安装目录
--sbin-path=/usr/sbin/nginx \ 指向(执行)程序文件(nginx
--conf-path=/etc/nginx/nginx.conf \ 指向配置文件
--error-log-path=/var/log/nginx/error.log \ 指向 log
--http-log-path=/var/log/nginx/access.log \
指向 http-log
--pid-path=/var/run/nginx/nginx.pid \
指向 pid
--lock-path=/var/lock/nginx.lock \
(安装文件锁定,防止安装文件被别人利用,或自己
误操作。)
--user=nginx \
--group=nginx \
--with-http_ssl_module \
启用 ngx_http_ssl_module 支持(使支持 https 请求,需已安装
openssl
--with-http_flv_module \ 启用 ngx_http_flv_module 支持(提供寻求内存使用基于时间的
偏移量文件)
--with-http_stub_status_module \ 启用 ngx_http_stub_status_module 支持(获取 nginx 自上次启
动以来的工作状态)
--with-http_gzip_static_module \ 启用 ngx_http_gzip_static_module 支持(在线实时压缩输出数据
流)
--http-client-body-temp-path=/var/tmp/nginx/client/ \ 设定 http 客户端请求临时文件路径
--http-proxy-temp-path=/var/tmp/nginx/proxy/ \ 设定 http 代理临时文件路径
--http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ \ 设定 http fastcgi 临时文件路径
--http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \ 设定 http uwsgi 临时文件路径
--http-scgi-temp-path=/var/tmp/nginx/scgi \ 设定 http scgi 临时文件路径
--with-pcre 启用 pcre
    安装完成
make install
Nginx 启动与访问
注意:启动 nginx 之前,上边将临时文件目录指定为 /var/temp/nginx/client , 需要在 /var
创建此 目录
mkdir /var/temp/nginx/client -p

进入到 Nginx 目录下的 sbin 目录
cd /usr/local/ngiux/sbin

输入命令启动 Nginx
./nginx

启动后查看进程
ps aux|grep nginx

输入网址默认80端口访问即可    

关闭 nginx  

./nginx -s stop
重启 nginx

./nginx -s reload

4  静态网站的部署

    将我们生成的静态页面上传到服务器的/nginx/html 下即可访问


5   配置虚拟主机

    端口绑定

        修改 Nginx 的配置文件:nginx/conf/nginx.conf

举例

将前端静态页 cart.html 以及图片样式等资源 上传至 nginx/cart
将前端静态页
search.html 以及图片样式等资源 上传至 nginx/search


server {
    listen 81;
server_name localhost;
location / {
        root cart;      #root 代表监听的目录
        index cart.html;   #index  默认访问的页面
            }
}
server {
listen 82;
server_name localhost;
location / {
        root search;
        index search.html;
                }
}
地址栏输入 http://192.168.25.141:81 可以看到购物车页面
地址栏输入 http://192.168.25.141:82 可以看到搜索页面

域名绑定

    一个域名对应一个 ip 地址,一个 ip 地址可以被多个域名绑定。

本地测试可以修改 hosts 文件(C:\Windows\System32\drivers\etc

举例

192.168.25.141        cart.pinyougou.com

192.168.25.141        search.pinyougou.com

server {
listen 80;
server_name cart.pinyougou.com;
location / {
        root cart;
        index cart.html;
                }

}

server {
listen 80;
server_name search.pinyougou.com;
location / {
        root search;
        index search.html;
                }
}
http://cart.pinyougou.com/

http://search.pinyougou.com/


6   Nginx 反向代理与负载均衡
Nginx 主机修改 Nginx 配置文件
最好先弄清正向代理和反向代理的含义

upstream tomcat-portal {
server 192.168.25.141:8080;
}
server {
listen 80;
server_name www.pinyougou.com;  
location / {
        proxy_pass http://
tomcat-portal;
        index index.html;

            }

}

测试反向代理流程: www.pinyougou.com---->tomcat-portal----->192.168.25.141:8080


负载均衡 Load Balance

upstream tomcat-portal {
server 192.168.25.141:8080;
server 192.168.25.141:8180
weight=2;
server 192.168.25.141:8280;
}
测试,每刷新四次,有两次是 8180



























































  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值