Nginx 简单使用

简介: Nginx 简单使用

nginx 基本命令

查看nginx命令

nginx -v
root@ubuntu:/usr/local/nginx/sbin# ./nginx -?
nginx version: nginx/1.14.0
Usage: nginx [-?hvVtTq] [-s signal] [-c filename] [-p prefix] [-g directives]
Options:
  -?,-h         : this help
  -v            : 显示版本并退出
  -V            : 显示版本和配置选项,然后退出
  -t            : 测试配置和退出
  -T            : 测试配置,转储配置并退出
  -q            : 在配置测试期间抑制非错误消息
  -s signal     : 向主节点发送信号: stop, quit, reopen(重新打开一个输出到日志的流), reload
  -p prefix     : 设置前缀路径 (default: /usr/local/nginx/) 表示nginx的相对路径,如在配置中的 root html 就会在这个路径下找html文件夹
  -c filename   : 设置配置文件 (default: conf/nginx.conf)
  -g directives : 从配置文件中设置全局指令 如 -g "user root;" 表示给配置文件添加一个user变量启动 像java的 jar -jar -Dfile.encoding=UTF-8 test.jar 一样

nginx配置

worker_processes  1; #工作进程数
events {
    worker_connections  1024; #每个工作进程的最大连接数
}
http {
    include       mime.types; #引入文件
    default_type  application/octet-stream;
    sendfile        on; #使用sendfile系统调用来传输文件
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  www.zijian.com; #域名,如果有两个server都是监听80端口,访问www.zijian.com 则使用该server处理
        location / {
            root   html; #指定站点根目录
            index  index.html index.htm;
        }

location 访问规则

location / {
       root   html; #指定站点根目录
       ndex  index.html index.htm;
}
#访问 www.zijian.com/user/a.html
#最终寻址 访问html目录下 user/a.html 文件
location /old {
  alias /usr/www/zijian_old; #指定站点别名 基于 alias路径+去除location前缀后的路径
  index index.html index.htm;
}
#访问 www.zijian.com/old/a.html
#最终寻址 /usr/www/zijian_old/a.html 
#基于正则的动静分离
location ~* \.(gif|jpg|png|css|js)$ { # ~* 表示对大小写不敏感的
      root /usr/www/static;
}
#防盗链规则
location ~* \.(gif|jpg|png|css|js)$ { # ~* 表示对大小写不敏感的
  valid_referers none blocked *.zijian.com; #若访问域名不匹配 *.zijian.com 则返回403
  if ($invalid_referer) {
          return 403;
  }     
  root /usr/www/static;
}
#下载限速
location /download {
    limit_rate 1m; //限制每S下载速度
    limit_rate_after 30m; // 下载超过30m之后再限速
}
#创建IP黑名单
location /
{
    #开放指定IP 段
    allow 192.168.0.0/24;
    allow 127.0.0.1;
    deny all;
    #这段配置值允许192.168.0.0/24网段和127.0.0.1的请求,其他来源IP全部拒绝。
}
#封禁指定IP
deny 192.168.0.1;
#封禁所有
deny    all;
#开放所有
allow    all;
# 创建黑名单文件
echo 'deny 192.168.0.132;' >> balck.ip
#http 配置块中引入 黑名单文件
include  black.ip;


目录
相关文章
|
存储 项目管理 开发工具
云效常见问题之上传文件的情况下单文件大小限制如何解决
云效(CloudEfficiency)是阿里云提供的一套软件研发效能平台,旨在通过工程效能、项目管理、质量保障等工具与服务,帮助企业提高软件研发的效率和质量。本合集是云效使用中可能遇到的一些常见问题及其答案的汇总。
422 0
|
Prometheus 监控 Cloud Native
手把手教你Prometheus + Granafa实现mysql 性能监测部署
数据库性能监控可以说是十分重要,能否自行搭建环境实现像阿里云或是腾讯云那样直观的展示不同维度数据的功能?答案是肯定的。下面详细说明一下安装部署过程以及过程中出现的问题,希望对你有所帮助!
手把手教你Prometheus + Granafa实现mysql 性能监测部署
|
Linux 数据安全/隐私保护 iOS开发
如何使用 Xcode 打包导出 IPA 文件并进行 iOS 应用内测,无需支付苹果开发者账号费用?
如何使用 Xcode 打包导出 IPA 文件并进行 iOS 应用内测,无需支付苹果开发者账号费用?
|
9月前
|
消息中间件 人工智能 Java
通义灵码2.0深度评测:AI原生研发时代的开发者革命
作为一名五年开发经验的程序员,我深刻感受到从手动编码到AI辅助编程的变革。通义灵码2.0基于Qwen2.5-Coder大模型,通过代码生成、多文件协同、单元测试和跨语言支持等功能,显著提升开发效率。它能生成完整工程代码,自动处理复杂业务逻辑与依赖关系;在系统升级和微服务改造中表现出色;自动生成高质量单元测试用例;还具备跨语言转换能力。尽管存在一些改进空间,但其高频迭代和功能优化展现了巨大潜力。通义灵码2.0正推动软件开发从“体力活”向“架构创造力”转型,是开发者不可错过的生产力工具。
通义灵码2.0深度评测:AI原生研发时代的开发者革命
|
Java Spring 前端开发
Spring Boot 中文乱码问题解决方案汇总
使用 Spring Boot 开发,对外开发接口供调用,传入参数中有中文,出现中文乱码,查了好多资料,总结解决方法如下: 第一步,约定传参编码格式 不管是使用httpclient,还是okhttp,都要设置传参的编码,为了统一,这里全部设置为utf-8 第二步,修改application.
10997 4
|
存储 安全 JavaScript
【XSS】XSS漏洞详细指南
【XSS】XSS漏洞详细指南
646 3
|
存储 Linux Docker
使用Docker存储驱动
【10月更文挑战第9天】
294 3
Math.atan2求角度解析
`Math.tan(x/y)` 求得是与y轴的夹角,而 `Math.atan2(y, x)` 求得是与x轴的夹角(范围:\(-\pi\) 到 \(\pi\)),顺时针为负,逆时针为正。`Math.atan2` 函数注意点:y在前,x在后。它能正确处理各象限的角度,例如 `Math.atan2(1, 1)` 返回 \(\frac{\pi}{4}\),而 `Math.atan2(-1, -1)` 返回 \(-\frac{3\pi}{4}\)。
280 0
Math.atan2求角度解析
|
Java 开发工具 Android开发
OpenCV(一):Android studio jni配置OpenCV(亲测有效,保姆级)
OpenCV(一):Android studio jni配置OpenCV(亲测有效,保姆级)
2207 0
|
安全 Java 开发者
JAVA 获取微信用户信息,看完这篇你必须得学会
JAVA 获取微信用户信息,看完这篇你必须得学会
1311 0
JAVA 获取微信用户信息,看完这篇你必须得学会