02---Nginx

Nginx

 

Nginx

  • 是一个高性能的Web和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器
  • 轻量级web服务器
  • 延伸版本tengine(淘宝)、openresrt(章奕春)

Nginx管理

安装

  • 安装包:官网、rpm包、第三方(有风险)
  • 下载:wget http://nginx.org/download/nginx-1.15.8.tar.gz -P /usr/src
  • 解压:tar zxvf nginx-1.15.8.tar.gz
  • 查看帮助:./configure --help

  • 配置:

    1. 检查环境是否满足安装条件,解决包依赖
    2. 指定安装方式
    3. 指定安装路径
  • 编译

    1. 下载c编译器等:yum install gcc pcre-devel zlib-devel
    2. 开始编译:./configure --prefix=/usr/local/nginx
    3. 将源码变成可执行程序:make
  • 安装:make install

使用

  • 查看某个端口是否被使用
    1. lsof -i :80
    2. netstat -ntpl
  • 启动:先cd到安装目录/usr/loacl/nginx/ ,之后就可执行sbin/nginx。可以通过查看端口占用命令看看是否已经启动

  • 验证:可以通过浏览器访问:192.168.2.42 就可以查看nginx启动页面

  • 注意:可能存在防火墙问题,简单的就关闭防火墙,或者开放此80端口

配置文件

基本配置

  # /表示root根目录 代表 /usr/local/nginx/html/
  location / {
        root   html;
        index  index.html index.htm;
    }

  # 访问控制  只允许本机访问a  其他机器拒绝访问
  location /a {
        allow 127.0.0.1; # 允许ip访问
        allow 192.168.2.42; 
        deny all;        # 拒绝所有 
        return 404;      # 返回页面
        # return http://www.jd.com;
    }

   # 目录用户验证 任何人都可以访问  但是需要用户密码才能访问
   location /b {
        auth_basic "登录验证(子牙)"
        auth_basic_user_file /etc/nginx/htpasswd
   }

   # 记录日志
   http {
        log_format alex '[$time_local] $remote_addr "$request" $status';
   }

   server{
        access_log  logs/host.access.log  alex;
   }

用到的命令

  • 文本浏览器:elinks 127.0.0.1 --dump
  • 不重启启动服务: killall -s HUP nginx
  • yum查找程序的名字:yum search elinks
  • 安装加密包:yum install httpd-tools
  • 生成用户名密码:htpasswd -c /etc/nginx/htpasswd alex
  • 滚动输出:tailf host.access.log
  • 删除文件带#号的:sed -i "/#/d" conf/nginx.conf
  • 删除文件空行的:sed -i "/^$/d" conf/nginx.conf
  • 上传文件到另一服务器:scp -r /root/nginx_install/ root@192.168.0.106:/root:移动一个目录下的所有文件用-r
原文地址:https://www.cnblogs.com/xjmlove/p/10209861.html