Nginx学习笔记

Nginx安装与相关命令

  • 安装Nginx需要的依赖包大概有:gcc、zlib、pcre-devel、openssl

1.通过wget去获取Nginx官网的源码安装包(以tar.gz结尾的压缩包文件)
2.找到安装包使用命令tar -xvf 安装包名解压
3.进入到解压后的Nginx目录,输入命令./configure,此命令用于检查安装环境是否符合条件,使用--prefix参数可以指定安装目录,使用参数--help可以查看./configure命令能够携带的参数;./configure完成后,会在最下面有一些路径信息,可以记录下来;
4.在上一步使用./configure检查环境完毕后,若是没有出现error报错,则可以输入命令make,来进行编译操作;若是出现了error报错信息,需要去排查错误,并再次进行环境检查,没有报错信息后,再执行make编译操作。
5.上一步编译操作执行完毕后,若没有error报错信息,则使用make install命令来进行安装操作;若有error,则需要排错。
6.安装完毕后,来到安装目录(若使用默认安装,即直接运行./configure命令而不指定--prefix安装路径,默认安装路径为/usr/local/nginx),该路径下的conf目录,是配置文件目录,sbin目录是nginx启动程序所在目录
7.进入sbin目录,使用./nginx命令可启动nginx服务,在启动前,可以查看相关端口是否被占用(lsof命令,或者netstat命令,若提示没有命令使用yum安装即可,启动nginx同样可用于查看服务是否运行)
8.在命令行中yum install elinks,安装文本版 的浏览器,后输入命令elinks url可以访问指定url,获取html页面

  • nginx配置文件参数
# user nobody  //启动子程序的默认用户,启动父进程的是root用户
# worker_processes  //启动的工作进程数,工作进程是单进程多线程,最好cpu是几核就几个进程

# 全局错误日志的位置及日志格式以及日志级别
# error_log logs/error.log;
# error_log logs/error.log notice;
# error_log logs/error.log info;

events {
  worker_connections 1024   //每个工作进程的最大并发数
}

http {
  # log_format   //日志格式
  log_format wdnmd_01 '[$time_local] $remote_addr "$request" $status'
  
  server {  //一个server就是一个虚拟主机,也就是一个站点
    listen  80;  // 监听80端口
    server_name  localhost;  //虚拟主机域名
    access_log  logs/host.access.log  wdnmd_01  //若不设置,则默认使用全局的日志,若有多个server,建议在这里单独设置access_log
    
    location / {
      root html;  //设置网站根目录在html
      index index.html index.htm;
    }
    location /hello {  //在root目录也就是html目录下创建一个名为hello的目录,当这个url被访问时,返回的是hello目录下的index.html页面。在这里可以设置访问控制
      allow all;   //允许所有访问
      deny  all;   //拒绝所有访问
      return 404   //返回404信号
    }
    location /baidu {
      return https://www.baidu.com  //将访问重定向至百度
    }
    location /b {  //目录用户验证:任何人都可以访问,但是需要凭用户密码才能访问
      auth_basic "登录验证";
      auth_basic_user_file  /etc/nginx/htpasswd;
      allow all;
    }
    
  }
}

  • 一些命令与安装
htpasswd    --> yum install https-tools
htpasswd -c path/htpasswd  //创建密码文件
htpasswd -m path/htpasswd user password //在密码文件中生成用户名和密码


...to be continue

你可能感兴趣的:(Nginx学习笔记)