【nginx空主机头】教程文章相关的互联网学习教程文章

nginx之upstream集中分配方式【代码】

一、分配方式1.轮询方式(默认)upstream realserver { server 192.168.1.1; server 192.168.1.2; } 每一个请求会按照时间顺序分配到后端不同的服务器上,假如有一台服务器宕机,则会自动剔除该服务器。2.weight权重upstream realserver { server 192.168.1.1 weight=5; server 192.168.1.2 weight=8; } 根据后端服务器的性能来设置被访问的几率,数值越大,几率越高。3.ip_hashupstream realserver { ...

解决Nginx占用80端口问题【代码】【图】

问题描述:nginx 配置使用80端口,自动跳转到欢迎页面(welcome to nginx!),但是其他端口可以正常使用解决方法:配置文件目录:/etc/nginx/sites-enables/在这个目录下面除了在自己写的配置文件(×××.conf)外还有一个default文件,这个文件是默认加载的而配置文件,编辑这个default文件,打开以后是这样的: 编辑default中的80端口,将其改为其他不经常用的端口。最后重启nginx,nginx -s reload 即可nginx重定向与端口映射...

nginx日志

1.日志分类 Nginx日志主要分为两种:访问日志和错误日志。日志开关在nginx配置文件中(nginx.conf)设置,两种日志都可以选择性关闭。1.1访问日志1.1.1简介访问日志主要记录客户端访问nginx的每一个请求,格式可以自定义。通过访问日志,你可以得到用户地域来源、跳转来源、使用终端、使用某个URL访问量等相关信息。1.1.2主要相关指令log_format(1)log_format用来设置日志格式,也就是日志文件中每条日志的格式(2)log_form...

nginx中lua脚本输出

在nginx中嵌入lua模块,能够使得nginx服务端的开发大大地方便,尤其是在实现一些额外的统计等小功能的时候。在nginx模块中直接lua嵌入脚本文件,可以直接使用nginx中lua模块的一些函数直接返回数据。可以调用的函数如下:ngx.say(),ngx.print(),return ,ngx.exit()等等,下面介绍一下这些函数的区别:(1)ngx.say()函数是返回该函数的参数加换行的数据,例如ngx.say("hello"),则返回数据hello/r/n,(2)ngx.print()是直接返回函数...

Nginx之Keepalived【代码】【图】

1. Keepalived 高可用基本概述1.1 什么是高可用一般是指2台机器启动着完全相同的业务系统,当有一台机器down机了,另外一台服务器就能快速的接管,对于访问的用户是无感知的。1.2 高可用通常使用什么软件?硬件通常使用 F5软件通常使用 keepalived1.3 keepalived是如何实现高可用的?keepalived软件是基于VRRP协议实现的,VRRP虚拟路由冗余协议,主要用于解决单点故障问题1.4 那么VRRP是如何诞生的,原理又是什么?比如公司的网络是...

nginx配置注意事项【代码】

nginx中server_name的匹配顺序1、精确匹配server_name,例如server {listen 80;server_name frady.info www.frady.info;... }2、以*或者.通配符开始的字符串: server {listen 80;server_name *.frady.info;... }3、以*或者.通配符结尾的表达式server {listen 80;server_name www.*;... }4、匹配到的正则表达式server {listen 80;server_name ~^(?<www>.+)\.frady\.info$;... } 当有多层级的nginx时...

nginx重新加载失败问题【代码】

nginx 重新加载命令 ./nginx -s reload出现nginx: [error] invalid PID number "" in "/usr/local/nginx/logs/nginx.pid"问题。解决办法:第一步:执行以下命令,杀掉nginx 进程killall -9 nginx?第二步:执行以下命令?,重新加载配置文件/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf第三步:执行以下命令,重新启动nginx ./nginx -s reload 注意第二步:我的nginx是安装在usr/local下的,执行第二步的时候根...

nginx server匹配【代码】【图】

在开始处理一个http请求时,nginx会取出header头中的host,与nginx.conf中每个server的server_name进行匹配,以此决定到底由哪一个server块来处理这个请求。server_name与host匹配优先级如下:1、完全匹配2、通配符在前的,如*.test.com3、在后的,如www.test.*4、正则匹配,如~^\.www\.test\.com$如果都不匹配1、优先选择listen配置项后有default或default_server的2、找到匹配listen端口的第一个server块空口无凭,验证一下:1、...

Django+gunicorn+nginx项目部署【代码】【图】

通过gunicorn部署django项目,比使用uwsgi方式要简单,具体操作如下: 步骤: 1. 安装依赖yum install python3 yum install nginx (或者下载nginx包部署)yum install gunicornpip install gevent # 这个是gunicorn运行的一种模式easy_install -U greenleteasy_install -U eventlet2. 检查python/nginx安装是否成功 a. 输入python3,是否出现交互命令页面 b. 启动nginx, 浏览器访问ip,出现weclome ngix举例: 启...

理解 Nginx 与 PHP-FPM 通信的工作机制? 面试考察点(重点)【代码】

基本原理:浏览器访问网页的过程请求静态页面Browser(浏览器)请求http://xxx.com/aa.html -> Web Server(Nginx/Apache)分发 -> 找到aa.html文件返回给Browser。请求动态脚本Browser请求http://xxx.com/bb.php -> Web Server(Nginx/Apache)分发 -> PHP解析器(PHP-CGI程序)-> 返回处理结果给Web Server -> 返回数据给Browser。原理:服务器根据配置文件,知道这是一个PHP脚本文件,需要去找PHP解析器来处理。PHP解析器会解析...

nginx+fast-cgi+c

1. 下载fastcgi开发包,编译安装http://www.fastcgi.com/dist/fcgi-current.tar.gz #wget http://www.fastcgi.com/dist/fcgi-current.tar.gz #tar zvzf fcgi-current.tar.gz#cd fcgi-current#./configure#make#make install 2. 下载spawn-fcgi,编译安装http://www.lighttpd.net/download/spawn-fcgi-1.6.0.tar.gz #wget http://www.lighttpd.net/download/spawn-fcgi-1.6.0.tar.gz #tar zxvf spawn-fcgi-1.6.0.tar.gz#cd spaw...

Nginx安装配置详解【代码】

1. Nginx安装1)下载Nginx: wget http://nginx.org/download/nginx-1.3.11.tar.gz /opt/ 2)安装Nginx: ./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_sub_module --with-md5=/usr/lib - -with-sha1=/usr/lib --with-http_gzip_static_module 认安装的路径是/usr/local/nginx--with-http_stub_status_module #nginx状...

kubernetes nginx ingress 使用记录

前言ingress是一种可以暴露k8s集群内部service的方式,用户编辑配置文件定义一个ingress资源即可实现外部网络访问内网service。 ingress controller是来管理所有的Ingress的对象,ingress controller内部其实是一个nginx的容器,当ingress controll 通过与 Kubernetes API 交互,感知集群中Ingress规则变化时会按照模板文件生成nginx.conf文件,然后reload该配置文件。 相对于kubernetes通过nodePort方式暴露服务来说,可以提供更加...

PHP+FastCGI+Nginx动态请求处理配置

Nginx不支持对外部程序的调用,所以必须通过FastCGI接口实现对外部程序的调用从而实现对client动态页面请求的处理。 CGI的英文全称为Common Gateway Interface(公共网关接口),是Nginx和动态脚本程序的桥梁。Nginx通过FastCGI接口将动态请求发送给FastCGI,FastCGI中的Wrapper进程生成一个线程。将请求交给脚本解释程序运行,然后通过原来的socket将解释运行后的结果原路返回给Nginx,之后Nginx将结果交给client。 Nginx是通...

解决nginx负载均衡的session共享问题

查了一些资料,看了一些别人写的文档,总结如下,实现nginx session的共享PHP服务器有多台,用nginx做负载均衡,这样同一个IP访问同一个页面会被分配到不同的服务器上,如果session不同步的话,就会出现很多问题,比如说最常见的登录状态,下面提供了几种方式来解决session共享的问题:1、不使用session,换用cookiesession是存放在服务器端的,cookie是存放在客户端的,我们可以把用户访问页面产生的session放到cookie里面,就是以...