Linux nginx

Nginx反向代理:     

1) nginx提供静态资源服务

nginx的一大经典使用场景就是提供静态资源服务,假设/var/www/html是静态资源所在的文件夹,那么可以通过修改配置文件来通过nginx处理这些静态资源。

在 /etc/nginx/conf.d/default.conf中增加代码

Test.php

<img src=’asset/1.png’>

location /asset {

root /var/www/html;        可以把路径写在其他服务器上

index index.html;

}

访问的就是 /var/www/html中的内容了

location还支持正则表达式,我们可以用正则表达式来匹配html、css、js、png、jpg、gif、ico这些为扩展名的请求:

location ~* \.(html|css|js|png|jpg|gif|ico)$ {

root /var/www;

}

2) nginx的另一大经典使用场景就是作为反向代理服务器将对应的请求转发到应用服务器处理然后将应用服务器的响应内容返回给客户端。

 通过配置location可以将客户端请求转发到配置的地址,通过nginx把客户端请求接受到 然后发到appache服务器上或者tomcat服务器上

location / {

#转发的应用服务器路径

proxy_pass http://localhost:81;

}

3) nginx负载均衡,上面演示了如何反向代理,但是如果请求量过大的时候,一台应用服务器显然是不能满足需求的,所以就需要多台服务器来实现负载均衡。

 

 

upstream local_servers {

    server 192.168.1.180:81 weight=1;

    server 127.0.0.1:81 weight=1;

}

 

 

 

location / {

 proxy_pass http://local_servers;       //转发的应用服务器路径

 proxy_set_header Host $host;       // $host就是nginx代理服务器

 proxy_set_header X-Real-IP $remote_addr;   //客户端真是ip

 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;    

proxy_buffering off;               //代理缓存删除

 

}

 

出现的频率大概是1:1。这就是upstream中weight的作用,表示weight表示权重,权重越大,请求转发到这个地址的概率就越大。

注意需要把当前nginx中对php的设置注释掉才可以

http://blog.csdn.net/z406245159/article/details/72821285

https://www.cnblogs.com/jsonhc/p/7199295.html?utm_source=itdadao&utm_medium=referral

原文地址:https://www.cnblogs.com/zzg02/p/9346173.html

时间: 2024-08-29 22:49:47

Linux nginx的相关文章

centos6 LNMP的搭建(linux+nginx+mysql+php)

LNMP的搭建(linux+nginx+mysql+php) 简介 LNMP代表的就是:Linux系统下Nginx+MySQL+PHP网站服务器架构. Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统.代表版本有:debian.centos.ubuntu.fedora.gentoo等. Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器. Mysql是一个小型关系型数据库管理系统. PHP是一种在服务器端执行的嵌入HTML文档

Linux nginx日志按天分割实例

Linux nginx日志按天分割实例 nginx的日志有个小缺点,日志文件一直就是一个,不会自动地进行切割,如果访问量很大的话,将导致日志文件非常大,不便于管理 这就需要我们自己来实现了,按日期每天生产一个日志文件 思路 每天零点把默认日志文件改名为当天日期,再重新打开新的日志文件 使用定时任务来执行脚本,脚本中执行改名和重新打开日志文件的操作 向Nginx主进程发送 USR1 信号,就可以重新打开日志文件 实现 #/bin/bash #备份日志的路径bakpath='/home/nginx/

How To Install Linux, nginx, MySQL, PHP (LEMP) stack on CentOS 6

About Lemp LEMP stack is a group of open source software to get web servers up and running. The acronym stands for Linux, nginx (pronounced Engine x), MySQL, and PHP. Since the server is already running CentOS, the linux part is taken care of. Here i

LAMP架构演进到LAMPGC,再演进到LNMLGC(linux+nginx+mysql+lua+gearman+C)

LAMP是一个大众的架构了,linux+apache+mysql+php 在我们系统的架构中,做了进一步的演进,linux+apahce+mysql+php+gearman+C php作页面的展示 核心业务逻辑由C语言实现,php通过gearman中间件调用C任务 由于apache在高并发方面不太给力,因此在需要高并发的场景中,我们进一步演进,linux+nginx+mysql+php+lua+gearman+C 页面部分由nginx+fastcgi+php-fpm来展示 高并发的业务调用由ng

centos7安装Lnmp(Linux+Nginx+MySql+Php+phpMyAdmin+Apache)

centos7安装Lnmp(Linux+Nginx+MySql+Php)及Apache Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx是一个高性能的HTTP和反向代理服务器,Nginx 超越 Apache 的高性能和稳定性,使得国内使用 Nginx 作为 Web 服务器的网站也越来越多, 我们学习PHP,以及搭建我们自己的LNMP环境,不妨先在本机上尝试学习,下面我们一步一步来完成在CentOS7 下安装LNMP(Linux+Nginx+MySQL+PHP)及Apache. 查

Linux+Nginx+Asp.net Core

Linux+Nginx+Asp.net Core 上篇<Docker基础入门及示例>文章介绍了Docker部署,以及相关.net core 的打包示例.这篇文章我将以oss.offical.site站点为例,主要介绍下在linux机器下完整的部署流程,.net core在docker容器中的运行已经介绍,这里.net core运行环境我会介绍直接在linux运行的场景,内容主要包含以下几个部分: 1. 基础工具和Linux环境准备 2. .Net Core环境安装及端口配置 3. Nginx的

让你的网站走https(linux, nginx)

自己编写 适合像我这样新手(我也是刚快要弄明白) 服务器已经通过阿里云web一键安装包安装完成 环境是linux+nginx 已经申请域名 购买免费CA证书 购买 验证 成功 下载上传证书 下载证书 上传证书 修改证书权限 nginx配置 nginx虚拟机配置 http强制走https 小坑 购买免费CA证书 我们可以在阿里云购买免费的证书 有效期一年 只能一个域名 可以购买多个免费的 购买 购买 进入之后就直接购买就行了 支付成功 验证 购买成功之后可以回到控制台,找到信息补全按钮,进行补全信

linux+nginx+mysql+php

LNMP(linux+nginx+mysql+php)服务器环境配置 一.简介 Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为 “engine X”, 是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器.Nginx是由俄罗斯人 Igor Sysoev为俄罗斯访问量第二的 Rambler.ru站点开发的,它已经在该站点运行超过三年了.Igor Sysoev在建立的项目时,使用基于BSD许可. 在高并发连接的情况下,Nginx是

在ubuntu中用apt-get安装LEMP栈(linux+nginx+mysql+php)

在ubuntu上安装lamp大家应该都很熟悉了,但对于现在很流行的lemp栈怎么样用apt-get安装,这样介绍的文章的不多.下面我用Ubuntu 12.04 LTS为例来介绍下如何用apt-get安装这些. 为什么要用apt-get不用编译安装 用包管理除了可以方便统一的管理软件外,他还可以帮你搞定启动脚本,自动更新等一大堆麻烦的问题.其实大多数人用的编译安装,也是使用的默认编译参数,大多数定制化的东西都可以通过配置文件完成.如果你对编译的定制化比较高,甚至可以自己做一个私有源来放你自己编译的

MacOS + Linux + Nginx

Asp.Net Core 发布和部署( MacOS + Linux + Nginx ) 前言 在上篇文章中,主要介绍了 Dotnet Core Run 命令,这篇文章主要是讲解如何在Linux中,对 Asp.Net Core 的程序进行发布和部署. 有关如何在 Jexus 中进行部署,请参见本人的另一篇文章:http://www.cnblogs.com/savorboard/p/dot-net-linux-jexus.html 目录 新建一个 WebApp 项目 发布到 Linux,Mac OS