목차
Nginx 소개" >Nginx 소개
두 번째 Nginx 설치" >두 번째 Nginx 설치
2.2 安装openssl,zlib等依赖 " >2.2 安装openssl,zlib等依赖
2.3 安装nginx " >2.3 安装nginx
2.4 启动nginx " >2.4 启动nginx
2.5 Nginx常用的命令
" >2.5 Nginx常用的命令
2.6 Nginx的配置文件 " >2.6 Nginx的配置文件
三 Nginx配置反向代理" >三 Nginx配置反向代理
3.1 ngix代理流程 " >3.1 ngix代理流程
三 Nginx配置反向代理" >三 Nginx配置反向代理
3.1 ngix代理流程 < /span>" >3.1 ngix代理流程 < /span>
3.2 配置ip和域名的绑定关系 " >3.2 配置ip和域名的绑定关系
3.3 在nginx配置请求转发
" >3.3 在nginx配置请求转发
3.4 根据请求后缀分发 " >3.4 根据请求后缀分发
四 Nginx配置负载均衡" >四 Nginx配置负载均衡
4.1 什么是负载均衡 " >4.1 什么是负载均衡
🎜4가지 Nginx 구성 로드 밸런싱🎜
4.1 로드 밸런싱이란 무엇입니까🎜 🎜" >4.1 로드 밸런싱이란 무엇입니까🎜 🎜
4.2 配置nginx.conf " >4.2 配置nginx.conf
4.3 测试效果 " >4.3 测试效果
4.4 nginx支持的几种负载策略
" >4.4 nginx支持的几种负载策略
운영 및 유지보수 엔진스 Nginx 매우 간단한 튜토리얼, 시작하려면 이 기사를 읽으세요.

Nginx 매우 간단한 튜토리얼, 시작하려면 이 기사를 읽으세요.

Jul 26, 2023 pm 05:05 PM
nginx

Nginx 소개

1.1 Nginx란 무엇입니까

Nginx是一个高性能的http和反向代理服务器,其特点是占用内存小,并发能力强。Nginx 성능은 높은 부하 테스트를 견딜 수 있다는 보고가 있습니다. 최대 50,000개의 동시 연결을 지원할 수 있습니다.

1.2 역방향 프록시

정방향 프록시: 브라우저에서 프록시 서버를 구성하고 프록시 서버를 통해 인터넷에 접속합니다.

역방향 프록시: 역방향 프록시 서버에 요청을 보내고, 역방향 프록시 서버는 데이터를 얻기 위해 대상 서버를 선택한 후 클라이언트에 반환합니다. 이때 역방향 프록시 서버와 대상 서버는 하나입니다. 서버를 외부로 유출시키면 프록시 서버 주소가 노출됩니다.

1.3 로드 밸런싱

요청량이 너무 많아 단일 서버에서 처리할 수 없는 경우 서버 수를 늘려 각 서버에 요청을 집중시키는 원래 상황입니다. 단일 서버가 분산을 요청하도록 변경됩니다.

1.4 동적 및 정적 분리

서버의 구문 분석 속도를 높이기 위해 동적 페이지와 정적 페이지를 구문 분석을 위해 다른 서버로 넘겨서 구문 분석 속도를 높이고 작업 부담을 줄일 수 있습니다. 원래 단일 서버.

두 번째 Nginx 설치

Nginx에는 pcre,openssl ,zlib, nginx는 이러한 종속성을 먼저 설치해야 합니다. Nginx需要几个依赖包,分别是pcreopensslzlib,在安装nginx之前需要先安装这几个依赖。

2.1 安装pcre依赖

  1. 使用命令下载pcre压缩包

1wget http://downloads.sourceforge.net/project/pcre/pcre/8.37/pcre-8.37.tar.gz
로그인 후 복사
  1. 解压压缩文件

1tar -xvf  pcre-8.37.tar.gz
로그인 후 복사
  1. 进入解压后的名录,执行以下命令

1./configure
로그인 후 복사
  1. 使用以下命令进行编译安装

1make && make install
로그인 후 복사
  1. 查看安装的pcre

    🎜2.1 pcre 종속성 설치 🎜🎜 🎜🎜
      < li style="font-size: 상속;color: 상속;line-height: 상속;margin-bottom: 0.5em;">

      명령을 사용하여 다운로드pcre압축 패키지🎜

    1pcre-config --version
    로그인 후 복사
    로그인 후 복사
    1. 🎜압축 파일의 압축을 풀어주세요🎜🎜

    1yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel
    로그인 후 복사
    로그인 후 복사
    1. 🎜압축해제된 디렉터리에 들어가서 실행하세요. 다음 명령 🎜🎜

    1./nginx
    로그인 후 복사
    로그인 후 복사
    로그인 후 복사
    1. 🎜다음 명령을 사용하여 컴파일하고 설치하세요🎜 🎜

    1./nginx -v
    로그인 후 복사
    로그인 후 복사
      < li style="font-size: 상속;color: 상속;line-height: 상속;margin-bottom: 0.5em;">

      설치된 항목 보기pcre버전 번호🎜

    1pcre-config --version
    로그인 후 복사
    로그인 후 복사

    2.2 安装openssl,zlib等依赖

    1yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel
    로그인 후 복사
    로그인 후 복사

    2.3 安装nginx

    1. nginx官网下载nginx,官网地址:https://nginx.org/download/;

    2. 将压缩包拖到服务器上;

    3. 使用命令tar -xvf nginx-1.12.2.tar.gz解压压缩包;

    4. 使用命令./configure检查;

    5. 使用命令make &amp;&amp; make isntall编译安装;

    安装成功后,在usr会多出来一个文件夹,local/nginx,在nginxsbin文件夹下有启动脚本。

    2.4 启动nginx

    /usr/local/nginx/sbin文件夹下,使用以下命令启动

    1./nginx
    로그인 후 복사
    로그인 후 복사
    로그인 후 복사

    然后浏览器访问服务器ip,nginx默认端口是80,出现以下页面则证明nginx安装成功;

    Nginx 매우 간단한 튜토리얼, 시작하려면 이 기사를 읽으세요.

    2.5 Nginx常用的命令

    使用这些命令时需要进入/usr/local/nginx/sbin文件夹

    • 查看nginx的版本号

    1./nginx -v
    로그인 후 복사
    로그인 후 복사
    • 启动nginx

    1./nginx
    로그인 후 복사
    로그인 후 복사
    로그인 후 복사
    • 关闭nginx

    1./nginx -s stop
    로그인 후 복사
    • 重新加载nginx

    1./nginx -s reload
    로그인 후 복사

    2.6 Nginx的配置文件

    nginx的配置文件在/usr/local/nginx/conf中的nginx.conf。我们将nginx.conf中注释的内容删除一下。

     1#user  nobody;
     2worker_processes  1;
     3
     4#pid        logs/nginx.pid;
     5
     6events {
     7    worker_connections  1024;
     8}
     9
    10http {
    11    include       mime.types;
    12    default_type  application/octet-stream;
    13
    14    sendfile        on;
    15    #tcp_nopush     on;
    16
    17    #keepalive_timeout  0;
    18    keepalive_timeout  65;
    19
    20    #gzip  on;
    21
    22    server {
    23        listen       80;
    24        server_name  localhost;
    25
    26        location / {
    27            root   html;
    28            index  index.html index.htm;
    29        }
    30    }
    31}
    로그인 후 복사

    nginx的配置文件包含三部门。

    1.全局块

    从配置文件开始到events块之间的内容,主要会设置一些nginx服务器整体运行的配置指令。

    1worker_processes  1;
    로그인 후 복사

    这个代表nginx处理并发的关键配置,值越大,处理并发能力越强。但是会受到硬件、软件等约束。

    2.events块

    events块涉及的指令主要影响nginx服务器与用户网络的连接。

    1worker_connections  1024;
    로그인 후 복사

    这个代表nginx支持的最大连接数。

    3.http全局块

    nginx服务器配置最频繁的부분분。http전체局块包含http块서버nginx服务器配置最频繁的部分。http全局块包含http块server块

    三 Nginx配置反向代理

    3.1 ngix代理流程

    Nginx 매우 간단한 튜토리얼, 시작하려면 이 기사를 읽으세요.

    本地浏览器访问nginx服务器,nginx服务器反向代理tomcat服务器,当我们请求nginx的时候直接访问到tomcattomcat的安装这里就不在讲了,我将tomcatnginx

    三 Nginx配置反向代理

    3.1 ngix代理流程 < /span>

    Nginx 매우 간단한 튜토리얼, 시작하려면 이 기사를 읽으세요.

    本地浏览器访问nginx服务器,nginx服务器反向代理tomcat服务器,当我们请求nginx의 时候直接访问到tomcattomcat적안심这里就不在讲了,我将tomcatnginx< /code>안심이동일台服务器上。🎜🎜<h3 id="span-style-font-size-inherit-line-height-inherit-display-inline-block-font-weight-normal-background-rgb-color-rgb-padding-px-px-px-border-top-right-radius-px-border-top-left-radius-px-margin-right-px-配置ip和域名的绑定关系-span-span-style-display-inline-block-vertical-align-bottom-border-bottom-px-solid-rgb-border-right-px-solid-transparent-span"><span style="font-size: inherit;line-height: inherit;display: inline-block;font-weight: normal;background: rgb(239, 112, 96);color: rgb(255, 255, 255);padding: 3px 10px 1px;border-top-right-radius: 3px;border-top-left-radius: 3px;margin-right: 3px;">3.2 配置ip和域名的绑定关系</span><span style="display: inline-block;vertical-align: bottom;border-bottom: 36px solid rgb(239, 235, 233);border-right: 20px solid transparent;"> </span></h3><p style="font-size: inherit;color: inherit;line-height: inherit;margin-top: 1.7em;margin-bottom: 1.7em;">由于我们的<code style="font-size: inherit;line-height: inherit;overflow-wrap: break-word;padding: 2px 4px;border-radius: 4px;margin-right: 2px;margin-left: 2px;color: rgb(248, 35, 117);background: rgb(248, 248, 248);">nginx没有域名,为了演示,因此我们在本地host文件中配置nginx服务器ip和域名进行绑定。这个host文件的具体位置在C:\Windows\System32\drivers\etc。在host文件中增加一句配置:

    147.104.xxx.xxx www.javatrip.com
    로그인 후 복사

    前面的ip是服务器的ip地址,后面的域名是我随便起的用于绑定这个ip的一个域名。配置好之后,我们使用域名访问一下tomcat,如果能请求到tomcat默认页面,则配置成功。

    Nginx 매우 간단한 튜토리얼, 시작하려면 이 기사를 읽으세요.

    3.3 在nginx配置请求转发

    1  server {
    2        listen       80;
    3        server_name  localhost;
    4
    5        location / {
    6            root   html;
    7            index  index.html index.htm;
    8        }
    9  }
    로그인 후 복사

    我们将以上默认的配置文件做个修改:

     1server {
     2    listen       80;
     3    server_name  47.104.xxx.xxx;
     4
     5    location / {
     6        root   html;
     7        proxy_pass http://127.0.0.1:8080;
     8        index  index.html index.htm;
     9    }
    10}
    로그인 후 복사

    以上这段配置的意思就是请求是47.104.xxx.xxx:80,都会转发至47.104.xxx.xxx:8080

    现在浏览器访问www.javatrip.com,发现直接转发到了tomcat上了,这样简单的反向代理就完成了。

    3.4 根据请求后缀分发

    我们再解压一个tomcat,端口号设置为8081,分别在两个tomcatwebapps目录下面新建devprod目录,然后在该目录下写一个文件。

    将请求www.javatrip.com:7001/dev转发到tomcat8080,将请求www.javatrip.com:7001/prod转发到tomcat8081。现在我们的nginx监听的端口号是7001。打开nginx的配置文件,新建一个server如下:

     1server {
     2    listen       7001;
     3    server_name  47.104.xxx.xxx;
     4
     5    location ~ /dev/ {
     6        proxy_pass http://127.0.0.1:8080;
     7    }
     8
     9    location ~ /prod/ {
    10        proxy_pass http://127.0.0.1:8081;
    11    }
    12}
    로그인 후 복사

    然后试试效果,分别访问www.javatrip.com:7001/dev/a.html和www.javatrip.com:7001/prod/a.html,效果如下:

    Nginx 매우 간단한 튜토리얼, 시작하려면 이 기사를 읽으세요.

    Nginx 매우 간단한 튜토리얼, 시작하려면 이 기사를 읽으세요.

    其中,配置转发的时候用到了~,其含义内容如下:

    • = 严格匹配。如果这个查询匹配,那么将停止搜索并立即处理此请求。

    • ~ 대소문자 구분 일치(정규식 사용 가능)

    • !~ 대소문자 구분 일치

    • ~* 대소문자 구분 없음 일치(정규식 사용 가능)

    • !~*는 대소문자를 구분하지 않습니다.

    • ^~ 이 접두사가 일반 문자열에 사용되는 경우 nginx경로가 일치하면 정규식을 테스트하지 않습니다. nginx如果路径匹配那么不测试正则表达式。

    四 Nginx配置负载均衡

    4.1 什么是负载均衡

    负载均衡(Load Balance),意思是将负载(工作任务,访问请求)进行平衡、分摊到多个操作单元(服务器,组件)上进行执行。是解决高性能,单点故障(高可用),扩展性(水平伸缩)的终极解决方案。

    现在我们想实现的效果是通过访问www.javatrip.com:7001/prod/a.html,将请求分别分发到两个tomcat上面去,首先我们在tomcat8080上新建一个prod的文件夹,里面放一个a.html的文件。这样tomcat8081tomcat8080两个上就都有了一个prod的文件加且里面有一个a.html

    🎜4가지 Nginx 구성 로드 밸런싱🎜

    4.1 로드 밸런싱이란 무엇입니까🎜 🎜

    로드 밸런스(Load Balance)는 부하(작업 작업, 액세스 요청)를 여러 곳에 분산하고 할당하는 것을 의미합니다. 운영 시 실행이 발생합니다. 단위(서버, 구성 요소). 고성능, 단일 장애 지점(고가용성), 확장성(수평 확장)을 해결하는 궁극적인 솔루션입니다. 🎜

    이제 우리가 달성하려는 효과는 다음과 같습니다. www.javatrip.com:7001/prod/a.html을 방문하여 요청을 각각 두 개의 Tomcat에 배포합니다. 먼저 prod 폴더에 a.html 파일. 이렇게 하면tomcat8081tomcat8080 prod의 파일과 a.html 파일. 🎜

    4.2 配置nginx.conf

    首先,在http块中配置两个tomcat的服务列表

    1upstream myserver{
    2    server 127.0.0.1:8080;
    3    server 127.0.0.1:8081;
    4}
    로그인 후 복사
    로그인 후 복사

    其次,在server块中配置规则:

     1server {
     2    listen       80;
     3    server_name  47.104.xxx.xxx;
     4
     5    location / {
     6        root   html;
     7        proxy_pass http://myserver;
     8        index  index.html index.htm;
     9    }
    10}
    로그인 후 복사

    4.3 测试效果

    访问地址:www.javatrip.com:7001/prod/a.html,多刷新几次。发现有的请求到tomcat8080上,有的请求到tomcat8081上。

    Nginx 매우 간단한 튜토리얼, 시작하려면 이 기사를 읽으세요.

    Nginx 매우 간단한 튜토리얼, 시작하려면 이 기사를 읽으세요.

    4.4 nginx支持的几种负载策略

    • 轮询(默认):每个请求按时间顺序逐一分配到不同的服务器,如果服务器down了,会自动剔除。

    1upstream myserver{
    2    server 127.0.0.1:8080;
    3    server 127.0.0.1:8081;
    4}
    로그인 후 복사
    로그인 후 복사
    • weight(权重):默认为1,权重越高,分配的请求越多。

    1upstream myserver{
    2    server 127.0.0.1:8080 weight=1;
    3    server 127.0.0.1:8081 weight=2;
    4}
    로그인 후 복사
    • ip hash:每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后台服务器,可以解决session的问题。

    1upstream myserver{
    2    ip_hash;
    3    server 127.0.0.1:8080;
    4    server 127.0.0.1:8081;
    5}
    로그인 후 복사
    • fair(第三方):按后端响应时间进行分配,响应时间越短分配的请求越多。

    1upstream myserver{
    2    server 127.0.0.1:8080;
    3    server 127.0.0.1:8081;
    4    fair;
    5}
    로그인 후 복사

    由于动静分离在实际开发中也不常用,就不再写了。本篇文章做为一个nginx入门,到这里就基本完结了。最后留给大家一个问题思考一下:如何保证nginx的高可用?

위 내용은 Nginx 매우 간단한 튜토리얼, 시작하려면 이 기사를 읽으세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 채팅 명령 및 사용 방법
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

nginx가 시작되었는지 확인하는 방법은 무엇입니까? nginx가 시작되었는지 확인하는 방법은 무엇입니까? Apr 14, 2025 pm 12:48 PM

Linux에서는 다음 명령을 사용하여 nginx가 시작되었는지 확인하십시오. SystemCTL 상태 Nginx 판사 명령 출력에 따라 : "active : running"이 표시되면 Nginx가 시작됩니다. "Active : 비활성 (죽음)"이 표시되면 Nginx가 중지됩니다.

Windows에서 nginx를 구성하는 방법 Windows에서 nginx를 구성하는 방법 Apr 14, 2025 pm 12:57 PM

Windows에서 Nginx를 구성하는 방법은 무엇입니까? nginx를 설치하고 가상 호스트 구성을 만듭니다. 기본 구성 파일을 수정하고 가상 호스트 구성을 포함하십시오. 시작 또는 새로 고침 Nginx. 구성을 테스트하고 웹 사이트를보십시오. SSL을 선택적으로 활성화하고 SSL 인증서를 구성하십시오. 포트 80 및 443 트래픽을 허용하도록 방화벽을 선택적으로 설정하십시오.

Linux에서 Nginx를 시작하는 방법 Linux에서 Nginx를 시작하는 방법 Apr 14, 2025 pm 12:51 PM

Linux에서 Nginx를 시작하는 단계 : Nginx가 설치되어 있는지 확인하십시오. systemctl start nginx를 사용하여 nginx 서비스를 시작하십시오. SystemCTL을 사용하여 NGINX를 사용하여 시스템 시작시 NGINX의 자동 시작을 활성화하십시오. SystemCTL 상태 nginx를 사용하여 시작이 성공했는지 확인하십시오. 기본 환영 페이지를 보려면 웹 브라우저의 http : // localhost를 방문하십시오.

nginx가 시작되었는지 확인하는 방법 nginx가 시작되었는지 확인하는 방법 Apr 14, 2025 pm 01:03 PM

nginx가 시작되었는지 확인하는 방법 : 1. 명령 줄을 사용하십시오 : SystemCTL 상태 nginx (linux/unix), netstat -ano | Findstr 80 (Windows); 2. 포트 80이 열려 있는지 확인하십시오. 3. 시스템 로그에서 nginx 시작 메시지를 확인하십시오. 4. Nagios, Zabbix 및 Icinga와 같은 타사 도구를 사용하십시오.

Nginx 크로스 도메인의 문제를 해결하는 방법 Nginx 크로스 도메인의 문제를 해결하는 방법 Apr 14, 2025 am 10:15 AM

Nginx 크로스 도메인 문제를 해결하는 두 가지 방법이 있습니다. 크로스 도메인 응답 헤더 수정 : 교차 도메인 요청을 허용하고 허용 된 메소드 및 헤더를 지정하고 캐시 시간을 설정하는 지시문을 추가하십시오. CORS 모듈 사용 : 모듈을 활성화하고 CORS 규칙을 구성하여 크로스 도메인 요청, 메소드, 헤더 및 캐시 시간을 허용합니다.

nginx 서버를 시작하는 방법 nginx 서버를 시작하는 방법 Apr 14, 2025 pm 12:27 PM

Nginx 서버를 시작하려면 다른 운영 체제에 따라 다른 단계가 필요합니다. Linux/Unix System : Nginx 패키지 설치 (예 : APT-Get 또는 Yum 사용). SystemCTL을 사용하여 nginx 서비스를 시작하십시오 (예 : Sudo SystemCtl start nginx). Windows 시스템 : Windows 바이너리 파일을 다운로드하여 설치합니다. nginx.exe 실행 파일을 사용하여 nginx를 시작하십시오 (예 : nginx.exe -c conf \ nginx.conf). 어떤 운영 체제를 사용하든 서버 IP에 액세스 할 수 있습니다.

nginx304 오류를 해결하는 방법 nginx304 오류를 해결하는 방법 Apr 14, 2025 pm 12:45 PM

질문에 대한 답변 : 304 수정되지 않은 오류는 브라우저가 클라이언트 요청의 최신 리소스 버전을 캐시했음을 나타냅니다. 솔루션 : 1. 브라우저 캐시를 지우십시오. 2. 브라우저 캐시를 비활성화합니다. 3. 클라이언트 캐시를 허용하도록 nginx를 구성합니다. 4. 파일 권한을 확인하십시오. 5. 파일 해시를 확인하십시오. 6. CDN 또는 리버스 프록시 캐시를 비활성화합니다. 7. nginx를 다시 시작하십시오.

nginx403 오류를 해결하는 방법 nginx403 오류를 해결하는 방법 Apr 14, 2025 pm 12:54 PM

서버는 요청 된 리소스에 액세스 할 수있는 권한이 없으므로 Nginx 403 오류가 발생합니다. 솔루션에는 다음이 포함됩니다. 파일 권한 확인 권한을 확인하십시오. .htaccess 구성을 확인하십시오. nginx 구성을 확인하십시오. Selinux 권한을 구성하십시오. 방화벽 규칙을 확인하십시오. 브라우저 문제, 서버 장애 또는 기타 가능한 오류와 같은 다른 원인을 해결하십시오.

See all articles