AI-大数据nginxweb

NGINX从入门到精通导航

2021-02-05  本文已影响0人  笔名辉哥

1,摘要

2,内容

2.1 如何服务器搭建网站(用宝塔面板)

请参考文章《如何服务器搭建网站(用宝塔面板)》 https://zhuanlan.zhihu.com/p/264988902

2.2 NGINX入门到精通系列

(1)【NGINX入门】1.Nginx基本介绍和安装入门
https://www.jianshu.com/p/dad9ffb77087

(2)【NGINX入门】2.Nginx搭建静态资源web服务器
https://www.jianshu.com/p/862fb0fedc76

(3)【NGINX入门】3.Nginx的缓存服务器proxy_cache配置
https://www.jianshu.com/p/6045923457dd

(4)【NGINX入门】4.Nginx location 匹配规则详细解说[+正则表达式]
https://www.jianshu.com/p/d576ee70ba8e

(5)【NGINX入门】5.Nginx实现负载均衡的6种方式及配置
https://www.jianshu.com/p/d42d66644ef8

(6)【NGINX入门】6.Nginx的rewrite规则详解
https://www.jianshu.com/p/899e6883db59

(7)【NGINX入门】7.Nginx配置安全证书SSL实例
https://www.jianshu.com/p/f0e7bad52d93

(8)【NGINX入门】8.Nginx的upstream 模块及参数测试
https://www.jianshu.com/p/fe310776be7c

(9)【NGINX入门】9.Nginx负载均衡并实现session共享的方法和实践
https://www.jianshu.com/p/f30d50a82860

(10)【NGINX入门】10.Nginx代理smtp、pop等邮件服务
https://www.jianshu.com/p/629ef7246ce2

(11)【NGINX入门】11.Nginx限流算法及配置实践
https://www.jianshu.com/p/93e2790a6817

(12) 【NGINX入门】12.OpenResty(Nginx+Lua)高并发最佳实践
https://www.jianshu.com/p/3924118ce79a

(13) 【NGINX入门】13.Nginx日志详解
https://www.jianshu.com/p/bf8aeeb0335a

(14) 【NGINX入门】14.Nginx原理深度解析
https://www.jianshu.com/p/e5ceb4c69fc4

(15)【NGINX入门】15.史上最全Nginx面试题
https://www.jianshu.com/p/8abf5bfbbceb

(16)【NGINX入门】16.使用JMeter压力测试工具测试NGINX限流配置实践
https://www.jianshu.com/p/e813d71bd9a4

2.3 语法补充

2.3.1 error_page语法

语法:

error_page code [ code... ] [ = | =answer-code ] uri | @named_location

默认值:
no
使用字段:
http, server, location, location 中的if字段

举例:
nginx指令error_page的作用是当发生错误的时候能够显示一个预定义的uri,比如:

error_page 502 503 /50x.html;
location = /50x.html {
    root /usr/share/nginx/html;
}   

当error_page后面跟的不是一个静态的内容的话,比如是由proxyed server或者FastCGI/uwsgi/SCGI server处理的话,server返回的状态(200, 302, 401 或者 404)也能返回给用户。

error_page 404 = /404.php;
location ~ \.php$ {
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
}   

也可以设置一个named location,然后在里边做对应的处理。

error_page 500 502 503 504 @jump_to_error;
location @jump_to_error {    
    proxy_pass http://backend;
}

同时也能够通过使客户端进行302、301等重定向的方式处理错误页面,默认状态码为302。

error_page 403 http://example.com/forbidden.html;
error_page 404 =301 http://example.com/notfound.html;

同时error_page在一次请求中只能响应一次,对应的nginx有另外一个配置可以控制这个选项:recursive_error_pages
默认为false,作用是控制error_page能否在一次请求中触发多次。

2.3.2 try_files的语法

try_files是nginx中http_core核心模块所带的指令,主要是能替代一些rewrite的指令,提高解析效率。

格式1:

try_files file ... uri; 格式2:try_files file ... =code;

使用字段:
可应用的上下文:server,location段

使用说明:
关键点1:按指定的file顺序查找存在的文件,并使用第一个找到的文件进行请求处理
关键点2:查找路径是按照给定的root或alias为根路径来查找的
关键点3:如果给出的file都没有匹配到,则重新请求最后一个参数给定的uri,就是新的location匹配
关键点4:如果是格式2,如果最后一个参数是 = 404 ,若给出的file都没有匹配到,则最后返回404的响应码

举例说明1:

location /images/ {
    root /opt/html/;
    try_files $uri   $uri/  /images/default.gif; 
}

比如 请求 127.0.0.1/images/test.gif 会依次查找:
1.文件/opt/html/images/test.gif
2.文件夹 /opt/html/images/test.gif/下的index文件
3.请求127.0.0.1/images/default.gif
注释:
try-files 如果不写上 $uri/,当直接访问一个目录路径时,并不会去匹配目录下的索引页 即 访问127.0.0.1/images/ 不会去访问 127.0.0.1/images/index.html 。

举例说明2:

location / {
    try_files /system/maintenance.html
              $uri $uri/index.html $uri.html
              @mongrel;
}

location @mongrel {
    proxy_pass http://mongrel;
}

以上中若未找到给定顺序的文件,则将会交给location @mongrel处理(相当于匹配到了@mongrel来匹配)。

3,问题解答

(1)宝塔忘记登录密码 紫框即你要修改的密码,红框即面板账户


实际操作:

cd /www/server/panel && python tools.py panel testpasswd
nqo5l7ns

cd /www/server/panel && python tools.py panel admin
nqo5l7ns

所以重置的用户名/密码为nqo5ldns/admin

4,参考

(1)宝塔官网 https://www.bt.cn/

(2)如何服务器搭建网站(用宝塔面板)
https://zhuanlan.zhihu.com/p/264988902

(3) 开源建站WordPress
https://cn.wordpress.org/

(4)Nginx实战教程
https://blog.csdn.net/junyouyh/category_8906485.html

上一篇下一篇

猜你喜欢

热点阅读