{"id":32961,"date":"2023-08-11T09:07:07","date_gmt":"2023-11-12T18:48:27","guid":{"rendered":"https:\/\/www.silicloud.com\/zh\/blog\/%e4%bd%bf%e7%94%a8%e6%ba%90%e4%bb%a3%e7%a0%81%e6%9e%84%e5%bb%ba%e5%b9%b6%e5%ae%89%e8%a3%85nginx%e5%88%b0amazon-linux-2\/"},"modified":"2024-04-30T18:02:01","modified_gmt":"2024-04-30T10:02:01","slug":"%e4%bd%bf%e7%94%a8%e6%ba%90%e4%bb%a3%e7%a0%81%e6%9e%84%e5%bb%ba%e5%b9%b6%e5%ae%89%e8%a3%85nginx%e5%88%b0amazon-linux-2","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/zh\/blog\/%e4%bd%bf%e7%94%a8%e6%ba%90%e4%bb%a3%e7%a0%81%e6%9e%84%e5%bb%ba%e5%b9%b6%e5%ae%89%e8%a3%85nginx%e5%88%b0amazon-linux-2\/","title":{"rendered":"\u4f7f\u7528\u6e90\u4ee3\u7801\u6784\u5efa\u5e76\u5b89\u88c5Nginx\u5230Amazon Linux 2"},"content":{"rendered":"<h1>\u9996\u5148<\/h1>\n<p>\u5728\u5b89\u88c5Amazon Linux2\u4e0a\u7684Nginx\u6e90\u7801\u65f6\u7684\u5907\u5fd8\u5f55<\/p>\n<h1>\u73af\u5883<\/h1>\n<p>\u4e9a\u9a6c\u900a Linux 2 AMI\uff08HVM\uff09<br \/>\n\u5185\u6838\u7248\u672c\u4e3a 4.14<br \/>\nSSD \u786c\u76d8\u7c7b\u578b<br \/>\n64 \u4f4d x86 \u67b6\u6784<\/p>\n<h1>\u5efa\u7b51\u51c6\u5907\u3002<\/h1>\n<p>\u5b89\u88c5\u5fc5\u8981\u7684\u7f16\u8bd1\u5668\u6765\u6784\u5efa\u9879\u76ee\u3002-devel\u9009\u9879\u662f\u53ef\u9009\u7684\uff0c\u5f53\u6dfb\u52a0\u6a21\u5757\u65f6\u4f1a\u9700\u8981\u3002Nginx\u63d0\u4f9b\u7b2c\u4e09\u65b9\u6a21\u5757\u3002\u5728\u7f16\u8bd1Nginx\u65f6\uff0c\u9700\u8981\u4e00\u8d77\u6784\u5efa\u7b2c\u4e09\u65b9\u6a21\u5757\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"nv\">$yum<\/span> <span class=\"nb\">install<\/span> <span class=\"nt\">-y<\/span> gcc gcc-c++ libxslt-devel gd-devel GeoIP-devel\r\nLoaded plugins: extras_suggestions, langpacks, priorities, update-motd\r\nYou need to be root to perform this command.\r\n<\/code><\/pre>\n<p>\u53ea\u6709\u5728\u6839\u76ee\u5f55\u4e0b\u624d\u4f1a\u51fa\u73b0\u9519\u8bef\uff0c\u6240\u4ee5\u8bf7\u5728\u6839\u76ee\u5f55\u4e0b\u91cd\u65b0\u6267\u884c\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"nv\">$sudo<\/span> su\r\n<span class=\"nv\">$yum<\/span> <span class=\"nb\">install<\/span> <span class=\"nt\">-y<\/span> gcc gcc-c++ libxslt-devel gd-devel GeoIP-devel\r\nInstalled:\r\n  GeoIP-devel.x86_64 0:1.5.0-11.amzn2.0.2         gcc.x86_64 0:7.3.1-13.amzn2         gcc-c++.x86_64 0:7.3.1-13.amzn2         gd-devel.x86_64 0:2.0.35-27.amzn2\r\n  libxslt-devel.x86_64 0:1.1.28-6.amzn2\r\n\r\nDependency Installed:\r\n  cpp.x86_64 0:7.3.1-13.amzn2                           dejavu-fonts-common.noarch 0:2.33-6.amzn2                dejavu-sans-fonts.noarch 0:2.33-6.amzn2\r\n  expat-devel.x86_64 0:2.1.0-12.amzn2                   fontconfig.x86_64 0:2.13.0-4.3.amzn2                     fontconfig-devel.x86_64 0:2.13.0-4.3.amzn2\r\n  fontpackages-filesystem.noarch 0:1.44-8.amzn2         freetype-devel.x86_64 0:2.8-14.amzn2.1                   gd.x86_64 0:2.0.35-27.amzn2\r\n  glibc-devel.x86_64 0:2.26-57.amzn2                    glibc-headers.x86_64 0:2.26-57.amzn2                     kernel-headers.x86_64 0:4.14.262-200.489.amzn2\r\n  libICE.x86_64 0:1.0.9-9.amzn2.0.2                     libSM.x86_64 0:1.2.2-2.amzn2.0.2                         libX11.x86_64 0:1.6.7-3.amzn2.0.2\r\n  libX11-common.noarch 0:1.6.7-3.amzn2.0.2              libX11-devel.x86_64 0:1.6.7-3.amzn2.0.2                  libXau.x86_64 0:1.0.8-2.1.amzn2.0.2\r\n  libXau-devel.x86_64 0:1.0.8-2.1.amzn2.0.2             libXext.x86_64 0:1.3.3-3.amzn2.0.2                       libXpm.x86_64 0:3.5.12-1.amzn2.0.2\r\n  libXpm-devel.x86_64 0:3.5.12-1.amzn2.0.2              libXt.x86_64 0:1.1.5-3.amzn2.0.2                         libatomic.x86_64 0:7.3.1-13.amzn2\r\n  libcilkrts.x86_64 0:7.3.1-13.amzn2                    libgcrypt-devel.x86_64 0:1.5.3-14.amzn2.0.2              libgpg-error-devel.x86_64 0:1.12-3.amzn2.0.3\r\n  libitm.x86_64 0:7.3.1-13.amzn2                        libjpeg-turbo-devel.x86_64 0:2.0.90-2.amzn2.0.1          libmpc.x86_64 0:1.0.1-3.amzn2.0.2\r\n  libmpx.x86_64 0:7.3.1-13.amzn2                        libpng-devel.x86_64 2:1.5.13-8.amzn2                     libquadmath.x86_64 0:7.3.1-13.amzn2\r\n  libsanitizer.x86_64 0:7.3.1-13.amzn2                  libuuid-devel.x86_64 0:2.30.2-2.amzn2.0.5                libxcb.x86_64 0:1.12-1.amzn2.0.2\r\n  libxcb-devel.x86_64 0:1.12-1.amzn2.0.2                libxml2-devel.x86_64 0:2.9.1-6.amzn2.5.4                 libxslt.x86_64 0:1.1.28-6.amzn2\r\n  mpfr.x86_64 0:3.1.1-4.amzn2.0.2                       xorg-x11-proto-devel.noarch 0:2018.4-1.amzn2.0.2         xz-devel.x86_64 0:5.2.2-1.amzn2.0.2\r\n  zlib-devel.x86_64 0:1.2.7-18.amzn2\r\n<\/code><\/pre>\n<h1>\u5728\u8fdb\u884c\u6784\u5efa\u65f6\u9700\u8981\u4e0b\u8f7d\u5fc5\u8981\u7684\u5e93\u3002<\/h1>\n<h2>PCRE\uff08\u5904\u7406\u6b63\u5219\u8868\u8fbe\u5f0f\uff09<\/h2>\n<h3>\u5b89\u88ddPCRE\uff1aPerl\u517c\u5bb9\u7684\u6b63\u5247\u8868\u9054\u5f0f\u3002<\/h3>\n<pre class=\"post-pre\"><code><span class=\"nv\">$cd<\/span> \/usr\/local\/src\r\n<span class=\"nv\">$yum<\/span> <span class=\"nt\">-y<\/span> <span class=\"nb\">install <\/span>pcre pcre-devel\r\nLoaded plugins: extras_suggestions, langpacks, priorities, update-motd\r\namzn2-core                                                                                                                                       | 3.7 kB  00:00:00\r\nPackage pcre-8.32-17.amzn2.0.2.x86_64 already installed and latest version\r\nResolving Dependencies\r\n<span class=\"nt\">--<\/span><span class=\"o\">&gt;<\/span> Running transaction check\r\n<span class=\"nt\">---<\/span><span class=\"o\">&gt;<\/span> Package pcre-devel.x86_64 0:8.32-17.amzn2.0.2 will be installed\r\n<span class=\"nt\">--<\/span><span class=\"o\">&gt;<\/span> Finished Dependency Resolution\r\n\r\nDependencies Resolved\r\n\r\n<span class=\"o\">========================================================================================================================================================================<\/span>\r\n Package                                Arch                               Version                                         Repository                              Size\r\n<span class=\"o\">========================================================================================================================================================================<\/span>\r\nInstalling:\r\n pcre-devel                             x86_64                             8.32-17.amzn2.0.2                               amzn2-core                             480 k\r\n\r\nTransaction Summary\r\n<span class=\"o\">========================================================================================================================================================================<\/span>\r\nInstall  1 Package\r\n\r\nTotal download size: 480 k\r\nInstalled size: 1.4 M\r\nDownloading packages:\r\npcre-devel-8.32-17.amzn2.0.2.x86_64.rpm                                                                                                          | 480 kB  00:00:00\r\nRunning transaction check\r\nRunning transaction <span class=\"nb\">test\r\n<\/span>Transaction <span class=\"nb\">test <\/span>succeeded\r\nRunning transaction\r\n  Installing : pcre-devel-8.32-17.amzn2.0.2.x86_64                                                                                                                  1\/1\r\n  Verifying  : pcre-devel-8.32-17.amzn2.0.2.x86_64                                                                                                                  1\/1\r\n\r\nInstalled:\r\n  pcre-devel.x86_64 0:8.32-17.amzn2.0.2\r\n\r\nComplete!\r\n<\/code><\/pre>\n<h2>OpenSSL\uff08SSL\/TLS\u901a\u4fe1\uff09\u7684\u542b\u4e49\u662f\u4ec0\u4e48\uff1f<\/h2>\n<pre class=\"post-pre\"><code><span class=\"nv\">$yum<\/span> <span class=\"nt\">-y<\/span> <span class=\"nb\">install <\/span>openssl openssl-devel\r\nLoaded plugins: extras_suggestions, langpacks, priorities, update-motd\r\nPackage 1:openssl-1.0.2k-19.amzn2.0.10.x86_64 already installed and latest version\r\nResolving Dependencies\r\n<span class=\"nt\">--<\/span><span class=\"o\">&gt;<\/span> Running transaction check\r\n<span class=\"nt\">---<\/span><span class=\"o\">&gt;<\/span> Package openssl-devel.x86_64 1:1.0.2k-19.amzn2.0.10 will be installed\r\n<span class=\"nt\">--<\/span><span class=\"o\">&gt;<\/span> Processing Dependency: krb5-devel<span class=\"o\">(<\/span>x86-64<span class=\"o\">)<\/span> <span class=\"k\">for <\/span>package: 1:openssl-devel-1.0.2k-19.amzn2.0.10.x86_64\r\n<span class=\"nt\">--<\/span><span class=\"o\">&gt;<\/span> Running transaction check\r\n<span class=\"nt\">---<\/span><span class=\"o\">&gt;<\/span> Package krb5-devel.x86_64 0:1.15.1-37.amzn2.2.4 will be installed\r\n<span class=\"nt\">--<\/span><span class=\"o\">&gt;<\/span> Processing Dependency: libkadm5<span class=\"o\">(<\/span>x86-64<span class=\"o\">)<\/span> <span class=\"o\">=<\/span> 1.15.1-37.amzn2.2.4 <span class=\"k\">for <\/span>package: krb5-devel-1.15.1-37.amzn2.2.4.x86_64\r\n<span class=\"nt\">--<\/span><span class=\"o\">&gt;<\/span> Processing Dependency: libverto-devel <span class=\"k\">for <\/span>package: krb5-devel-1.15.1-37.amzn2.2.4.x86_64\r\n<span class=\"nt\">--<\/span><span class=\"o\">&gt;<\/span> Processing Dependency: libselinux-devel <span class=\"k\">for <\/span>package: krb5-devel-1.15.1-37.amzn2.2.4.x86_64\r\n<span class=\"nt\">--<\/span><span class=\"o\">&gt;<\/span> Processing Dependency: libcom_err-devel <span class=\"k\">for <\/span>package: krb5-devel-1.15.1-37.amzn2.2.4.x86_64\r\n<span class=\"nt\">--<\/span><span class=\"o\">&gt;<\/span> Processing Dependency: keyutils-libs-devel <span class=\"k\">for <\/span>package: krb5-devel-1.15.1-37.amzn2.2.4.x86_64\r\n<span class=\"nt\">--<\/span><span class=\"o\">&gt;<\/span> Running transaction check\r\n<span class=\"nt\">---<\/span><span class=\"o\">&gt;<\/span> Package keyutils-libs-devel.x86_64 0:1.5.8-3.amzn2.0.2 will be installed\r\n<span class=\"nt\">---<\/span><span class=\"o\">&gt;<\/span> Package libcom_err-devel.x86_64 0:1.42.9-19.amzn2 will be installed\r\n<span class=\"nt\">---<\/span><span class=\"o\">&gt;<\/span> Package libkadm5.x86_64 0:1.15.1-37.amzn2.2.4 will be installed\r\n<span class=\"nt\">---<\/span><span class=\"o\">&gt;<\/span> Package libselinux-devel.x86_64 0:2.5-12.amzn2.0.2 will be installed\r\n<span class=\"nt\">--<\/span><span class=\"o\">&gt;<\/span> Processing Dependency: libsepol-devel<span class=\"o\">(<\/span>x86-64<span class=\"o\">)<\/span> <span class=\"o\">&gt;=<\/span> 2.5-6 <span class=\"k\">for <\/span>package: libselinux-devel-2.5-12.amzn2.0.2.x86_64\r\n<span class=\"nt\">--<\/span><span class=\"o\">&gt;<\/span> Processing Dependency: pkgconfig<span class=\"o\">(<\/span>libsepol<span class=\"o\">)<\/span> <span class=\"k\">for <\/span>package: libselinux-devel-2.5-12.amzn2.0.2.x86_64\r\n<span class=\"nt\">---<\/span><span class=\"o\">&gt;<\/span> Package libverto-devel.x86_64 0:0.2.5-4.amzn2.0.2 will be installed\r\n<span class=\"nt\">--<\/span><span class=\"o\">&gt;<\/span> Running transaction check\r\n<span class=\"nt\">---<\/span><span class=\"o\">&gt;<\/span> Package libsepol-devel.x86_64 0:2.5-8.1.amzn2.0.2 will be installed\r\n<span class=\"nt\">--<\/span><span class=\"o\">&gt;<\/span> Finished Dependency Resolution\r\n\r\nDependencies Resolved\r\n\r\n<span class=\"o\">========================================================================================================================================================================<\/span>\r\n Package                                      Arch                            Version                                         Repository                           Size\r\n<span class=\"o\">========================================================================================================================================================================<\/span>\r\nInstalling:\r\n openssl-devel                                x86_64                          1:1.0.2k-19.amzn2.0.10                          amzn2-core                          1.5 M\r\nInstalling <span class=\"k\">for <\/span>dependencies:\r\n keyutils-libs-devel                          x86_64                          1.5.8-3.amzn2.0.2                               amzn2-core                           37 k\r\n krb5-devel                                   x86_64                          1.15.1-37.amzn2.2.4                             amzn2-core                          272 k\r\n libcom_err-devel                             x86_64                          1.42.9-19.amzn2                                 amzn2-core                           32 k\r\n libkadm5                                     x86_64                          1.15.1-37.amzn2.2.4                             amzn2-core                          179 k\r\n libselinux-devel                             x86_64                          2.5-12.amzn2.0.2                                amzn2-core                          187 k\r\n libsepol-devel                               x86_64                          2.5-8.1.amzn2.0.2                               amzn2-core                           77 k\r\n libverto-devel                               x86_64                          0.2.5-4.amzn2.0.2                               amzn2-core                           12 k\r\n\r\nTransaction Summary\r\n<span class=\"o\">========================================================================================================================================================================<\/span>\r\nInstall  1 Package <span class=\"o\">(<\/span>+7 Dependent packages<span class=\"o\">)<\/span>\r\n\r\nTotal download size: 2.3 M\r\nInstalled size: 4.5 M\r\nDownloading packages:\r\n<span class=\"o\">(<\/span>1\/8<span class=\"o\">)<\/span>: keyutils-libs-devel-1.5.8-3.amzn2.0.2.x86_64.rpm                                                                                          |  37 kB  00:00:00\r\n<span class=\"o\">(<\/span>2\/8<span class=\"o\">)<\/span>: krb5-devel-1.15.1-37.amzn2.2.4.x86_64.rpm                                                                                                 | 272 kB  00:00:00\r\n<span class=\"o\">(<\/span>3\/8<span class=\"o\">)<\/span>: libcom_err-devel-1.42.9-19.amzn2.x86_64.rpm                                                                                               |  32 kB  00:00:00\r\n<span class=\"o\">(<\/span>4\/8<span class=\"o\">)<\/span>: libkadm5-1.15.1-37.amzn2.2.4.x86_64.rpm                                                                                                   | 179 kB  00:00:00\r\n<span class=\"o\">(<\/span>5\/8<span class=\"o\">)<\/span>: libselinux-devel-2.5-12.amzn2.0.2.x86_64.rpm                                                                                              | 187 kB  00:00:00\r\n<span class=\"o\">(<\/span>6\/8<span class=\"o\">)<\/span>: libsepol-devel-2.5-8.1.amzn2.0.2.x86_64.rpm                                                                                               |  77 kB  00:00:00\r\n<span class=\"o\">(<\/span>7\/8<span class=\"o\">)<\/span>: libverto-devel-0.2.5-4.amzn2.0.2.x86_64.rpm                                                                                               |  12 kB  00:00:00\r\n<span class=\"o\">(<\/span>8\/8<span class=\"o\">)<\/span>: openssl-devel-1.0.2k-19.amzn2.0.10.x86_64.rpm                                                                                             | 1.5 MB  00:00:00\r\n<span class=\"nt\">------------------------------------------------------------------------------------------------------------------------------------------------------------------------<\/span>\r\nTotal                                                                                                                                    10 MB\/s | 2.3 MB  00:00:00\r\nRunning transaction check\r\nRunning transaction <span class=\"nb\">test\r\n<\/span>Transaction <span class=\"nb\">test <\/span>succeeded\r\nRunning transaction\r\n  Installing : libkadm5-1.15.1-37.amzn2.2.4.x86_64                                                                                                                  1\/8\r\n  Installing : libverto-devel-0.2.5-4.amzn2.0.2.x86_64                                                                                                              2\/8\r\n  Installing : libcom_err-devel-1.42.9-19.amzn2.x86_64                                                                                                              3\/8\r\n  Installing : libsepol-devel-2.5-8.1.amzn2.0.2.x86_64                                                                                                              4\/8\r\n  Installing : libselinux-devel-2.5-12.amzn2.0.2.x86_64                                                                                                             5\/8\r\n  Installing : keyutils-libs-devel-1.5.8-3.amzn2.0.2.x86_64                                                                                                         6\/8\r\n  Installing : krb5-devel-1.15.1-37.amzn2.2.4.x86_64                                                                                                                7\/8\r\n  Installing : 1:openssl-devel-1.0.2k-19.amzn2.0.10.x86_64                                                                                                          8\/8\r\n  Verifying  : keyutils-libs-devel-1.5.8-3.amzn2.0.2.x86_64                                                                                                         1\/8\r\n  Verifying  : libselinux-devel-2.5-12.amzn2.0.2.x86_64                                                                                                             2\/8\r\n  Verifying  : libsepol-devel-2.5-8.1.amzn2.0.2.x86_64                                                                                                              3\/8\r\n  Verifying  : libcom_err-devel-1.42.9-19.amzn2.x86_64                                                                                                              4\/8\r\n  Verifying  : libverto-devel-0.2.5-4.amzn2.0.2.x86_64                                                                                                              5\/8\r\n  Verifying  : 1:openssl-devel-1.0.2k-19.amzn2.0.10.x86_64                                                                                                          6\/8\r\n  Verifying  : libkadm5-1.15.1-37.amzn2.2.4.x86_64                                                                                                                  7\/8\r\n  Verifying  : krb5-devel-1.15.1-37.amzn2.2.4.x86_64                                                                                                                8\/8\r\n\r\nInstalled:\r\n  openssl-devel.x86_64 1:1.0.2k-19.amzn2.0.10\r\n\r\nDependency Installed:\r\n  keyutils-libs-devel.x86_64 0:1.5.8-3.amzn2.0.2            krb5-devel.x86_64 0:1.15.1-37.amzn2.2.4               libcom_err-devel.x86_64 0:1.42.9-19.amzn2\r\n  libkadm5.x86_64 0:1.15.1-37.amzn2.2.4                     libselinux-devel.x86_64 0:2.5-12.amzn2.0.2            libsepol-devel.x86_64 0:2.5-8.1.amzn2.0.2\r\n  libverto-devel.x86_64 0:0.2.5-4.amzn2.0.2\r\n\r\nComplete!\r\n<\/code><\/pre>\n<h2>\u4e0b\u8f7dNginx\u7684\u6e90\u4ee3\u7801\u3002<\/h2>\n<pre class=\"post-pre\"><code><span class=\"nv\">$cd<\/span> \/usr\/local\/src\r\n<span class=\"nv\">$wget<\/span> http:\/\/nginx.org\/download\/nginx-1.20.0.tar.gz\r\n<span class=\"nt\">--2022-02-19<\/span> 14:30:37--  http:\/\/nginx.org\/download\/nginx-1.20.0.tar.gz\r\nResolving nginx.org <span class=\"o\">(<\/span>nginx.org<span class=\"o\">)<\/span>... 3.125.197.172, 52.58.199.22, 2a05:d014:edb:5704::6, ...\r\nConnecting to nginx.org <span class=\"o\">(<\/span>nginx.org<span class=\"o\">)<\/span>|3.125.197.172|:80... connected.\r\nHTTP request sent, awaiting response... 200 OK\r\nLength: 1061070 <span class=\"o\">(<\/span>1.0M<span class=\"o\">)<\/span> <span class=\"o\">[<\/span>application\/octet-stream]\r\nSaving to: \u2018nginx-1.20.0.tar.gz\u2019\r\n\r\n100%[<span class=\"o\">==============================================================================================================================&gt;]<\/span> 1,061,070   1.88MB\/s   <span class=\"k\">in <\/span>0.5s\r\n\r\n2022-02-19 14:30:38 <span class=\"o\">(<\/span>1.88 MB\/s<span class=\"o\">)<\/span> - \u2018nginx-1.20.0.tar.gz\u2019 saved <span class=\"o\">[<\/span>1061070\/1061070]\r\n<\/code><\/pre>\n<h2>\u89e3\u538bNginx\u7684\u6e90\u4ee3\u7801\u3002<\/h2>\n<pre class=\"post-pre\"><code><span class=\"nv\">$tar<\/span> xzvf nginx-1.20.0.tar.gz\r\nnginx-1.20.0\/\r\nnginx-1.20.0\/auto\/\r\nnginx-1.20.0\/conf\/\r\nnginx-1.20.0\/contrib\/\r\nnginx-1.20.0\/src\/\r\nnginx-1.20.0\/configure\r\nnginx-1.20.0\/LICENSE\r\nnginx-1.20.0\/README\r\nnginx-1.20.0\/html\/\r\nnginx-1.20.0\/man\/\r\nnginx-1.20.0\/CHANGES.ru\r\nnginx-1.20.0\/CHANGES\r\nnginx-1.20.0\/man\/nginx.8\r\nnginx-1.20.0\/html\/50x.html\r\nnginx-1.20.0\/html\/index.html\r\nnginx-1.20.0\/src\/core\/\r\nnginx-1.20.0\/src\/event\/\r\nnginx-1.20.0\/src\/http\/\r\nnginx-1.20.0\/src\/mail\/\r\nnginx-1.20.0\/src\/misc\/\r\nnginx-1.20.0\/src\/os\/\r\nnginx-1.20.0\/src\/stream\/\r\nnginx-1.20.0\/src\/stream\/ngx_stream.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream.h\r\nnginx-1.20.0\/src\/stream\/ngx_stream_access_module.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_core_module.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_geo_module.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_geoip_module.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_handler.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_limit_conn_module.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_log_module.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_map_module.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_proxy_module.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_realip_module.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_return_module.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_script.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_script.h\r\nnginx-1.20.0\/src\/stream\/ngx_stream_set_module.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_split_clients_module.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_ssl_module.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_ssl_module.h\r\nnginx-1.20.0\/src\/stream\/ngx_stream_ssl_preread_module.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_upstream.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_upstream.h\r\nnginx-1.20.0\/src\/stream\/ngx_stream_upstream_hash_module.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_upstream_least_conn_module.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_upstream_random_module.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_upstream_round_robin.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_upstream_round_robin.h\r\nnginx-1.20.0\/src\/stream\/ngx_stream_upstream_zone_module.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_variables.c\r\nnginx-1.20.0\/src\/stream\/ngx_stream_variables.h\r\nnginx-1.20.0\/src\/stream\/ngx_stream_write_filter_module.c\r\nnginx-1.20.0\/src\/os\/unix\/\r\nnginx-1.20.0\/src\/os\/unix\/ngx_alloc.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_alloc.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_atomic.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_channel.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_channel.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_daemon.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_darwin.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_darwin_config.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_darwin_init.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_darwin_sendfile_chain.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_dlopen.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_dlopen.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_errno.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_errno.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_file_aio_read.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_files.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_files.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_freebsd.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_freebsd_config.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_linux.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_freebsd_init.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_freebsd_sendfile_chain.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_gcc_atomic_amd64.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_gcc_atomic_ppc.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_gcc_atomic_sparc64.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_gcc_atomic_x86.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_linux_aio_read.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_linux_config.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_linux_init.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_linux_sendfile_chain.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_os.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_posix_config.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_posix_init.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_process.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_process.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_process_cycle.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_process_cycle.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_readv_chain.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_recv.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_send.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_setaffinity.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_setaffinity.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_setproctitle.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_setproctitle.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_shmem.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_shmem.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_socket.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_socket.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_solaris.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_solaris_config.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_solaris_init.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_solaris_sendfilev_chain.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_sunpro_amd64.il\r\nnginx-1.20.0\/src\/os\/unix\/ngx_sunpro_atomic_sparc64.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_sunpro_sparc64.il\r\nnginx-1.20.0\/src\/os\/unix\/ngx_thread.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_sunpro_x86.il\r\nnginx-1.20.0\/src\/os\/unix\/ngx_thread_cond.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_thread_id.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_thread_mutex.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_time.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_time.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_udp_recv.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_udp_send.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_udp_sendmsg_chain.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_user.c\r\nnginx-1.20.0\/src\/os\/unix\/ngx_user.h\r\nnginx-1.20.0\/src\/os\/unix\/ngx_writev_chain.c\r\nnginx-1.20.0\/src\/misc\/ngx_cpp_test_module.cpp\r\nnginx-1.20.0\/src\/misc\/ngx_google_perftools_module.c\r\nnginx-1.20.0\/src\/mail\/ngx_mail.c\r\nnginx-1.20.0\/src\/mail\/ngx_mail.h\r\nnginx-1.20.0\/src\/mail\/ngx_mail_auth_http_module.c\r\nnginx-1.20.0\/src\/mail\/ngx_mail_core_module.c\r\nnginx-1.20.0\/src\/mail\/ngx_mail_handler.c\r\nnginx-1.20.0\/src\/mail\/ngx_mail_imap_handler.c\r\nnginx-1.20.0\/src\/mail\/ngx_mail_imap_module.c\r\nnginx-1.20.0\/src\/mail\/ngx_mail_imap_module.h\r\nnginx-1.20.0\/src\/mail\/ngx_mail_parse.c\r\nnginx-1.20.0\/src\/mail\/ngx_mail_pop3_handler.c\r\nnginx-1.20.0\/src\/mail\/ngx_mail_pop3_module.c\r\nnginx-1.20.0\/src\/mail\/ngx_mail_pop3_module.h\r\nnginx-1.20.0\/src\/mail\/ngx_mail_proxy_module.c\r\nnginx-1.20.0\/src\/mail\/ngx_mail_realip_module.c\r\nnginx-1.20.0\/src\/mail\/ngx_mail_smtp_handler.c\r\nnginx-1.20.0\/src\/mail\/ngx_mail_smtp_module.c\r\nnginx-1.20.0\/src\/mail\/ngx_mail_smtp_module.h\r\nnginx-1.20.0\/src\/mail\/ngx_mail_ssl_module.c\r\nnginx-1.20.0\/src\/mail\/ngx_mail_ssl_module.h\r\nnginx-1.20.0\/src\/http\/modules\/\r\nnginx-1.20.0\/src\/http\/ngx_http.c\r\nnginx-1.20.0\/src\/http\/ngx_http.h\r\nnginx-1.20.0\/src\/http\/ngx_http_cache.h\r\nnginx-1.20.0\/src\/http\/ngx_http_config.h\r\nnginx-1.20.0\/src\/http\/ngx_http_copy_filter_module.c\r\nnginx-1.20.0\/src\/http\/ngx_http_core_module.c\r\nnginx-1.20.0\/src\/http\/ngx_http_core_module.h\r\nnginx-1.20.0\/src\/http\/ngx_http_file_cache.c\r\nnginx-1.20.0\/src\/http\/ngx_http_header_filter_module.c\r\nnginx-1.20.0\/src\/http\/ngx_http_parse.c\r\nnginx-1.20.0\/src\/http\/ngx_http_postpone_filter_module.c\r\nnginx-1.20.0\/src\/http\/ngx_http_request.c\r\nnginx-1.20.0\/src\/http\/ngx_http_request.h\r\nnginx-1.20.0\/src\/http\/ngx_http_request_body.c\r\nnginx-1.20.0\/src\/http\/ngx_http_script.c\r\nnginx-1.20.0\/src\/http\/v2\/\r\nnginx-1.20.0\/src\/http\/ngx_http_script.h\r\nnginx-1.20.0\/src\/http\/ngx_http_special_response.c\r\nnginx-1.20.0\/src\/http\/ngx_http_upstream.c\r\nnginx-1.20.0\/src\/http\/ngx_http_upstream.h\r\nnginx-1.20.0\/src\/http\/ngx_http_upstream_round_robin.c\r\nnginx-1.20.0\/src\/http\/ngx_http_upstream_round_robin.h\r\nnginx-1.20.0\/src\/http\/ngx_http_variables.c\r\nnginx-1.20.0\/src\/http\/ngx_http_variables.h\r\nnginx-1.20.0\/src\/http\/ngx_http_write_filter_module.c\r\nnginx-1.20.0\/src\/http\/v2\/ngx_http_v2.c\r\nnginx-1.20.0\/src\/http\/v2\/ngx_http_v2.h\r\nnginx-1.20.0\/src\/http\/v2\/ngx_http_v2_encode.c\r\nnginx-1.20.0\/src\/http\/v2\/ngx_http_v2_filter_module.c\r\nnginx-1.20.0\/src\/http\/v2\/ngx_http_v2_huff_decode.c\r\nnginx-1.20.0\/src\/http\/v2\/ngx_http_v2_huff_encode.c\r\nnginx-1.20.0\/src\/http\/v2\/ngx_http_v2_module.c\r\nnginx-1.20.0\/src\/http\/v2\/ngx_http_v2_module.h\r\nnginx-1.20.0\/src\/http\/v2\/ngx_http_v2_table.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_access_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_addition_filter_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_auth_basic_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_auth_request_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_autoindex_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_browser_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_charset_filter_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_chunked_filter_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_dav_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_degradation_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_empty_gif_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_fastcgi_module.c\r\nnginx-1.20.0\/src\/http\/modules\/perl\/\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_flv_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_geo_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_geoip_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_grpc_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_gunzip_filter_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_gzip_filter_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_gzip_static_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_headers_filter_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_image_filter_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_index_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_limit_conn_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_limit_req_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_log_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_map_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_memcached_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_mirror_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_mp4_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_not_modified_filter_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_proxy_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_random_index_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_range_filter_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_realip_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_referer_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_rewrite_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_scgi_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_secure_link_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_slice_filter_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_split_clients_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_ssi_filter_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_ssi_filter_module.h\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_ssl_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_ssl_module.h\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_static_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_stub_status_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_sub_filter_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_try_files_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_upstream_hash_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_upstream_ip_hash_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_upstream_keepalive_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_upstream_random_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_upstream_least_conn_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_upstream_zone_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_userid_filter_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_uwsgi_module.c\r\nnginx-1.20.0\/src\/http\/modules\/ngx_http_xslt_filter_module.c\r\nnginx-1.20.0\/src\/http\/modules\/perl\/Makefile.PL\r\nnginx-1.20.0\/src\/http\/modules\/perl\/nginx.pm\r\nnginx-1.20.0\/src\/http\/modules\/perl\/nginx.xs\r\nnginx-1.20.0\/src\/http\/modules\/perl\/ngx_http_perl_module.c\r\nnginx-1.20.0\/src\/http\/modules\/perl\/ngx_http_perl_module.h\r\nnginx-1.20.0\/src\/http\/modules\/perl\/typemap\r\nnginx-1.20.0\/src\/event\/modules\/\r\nnginx-1.20.0\/src\/event\/ngx_event.c\r\nnginx-1.20.0\/src\/event\/ngx_event.h\r\nnginx-1.20.0\/src\/event\/ngx_event_accept.c\r\nnginx-1.20.0\/src\/event\/ngx_event_connect.c\r\nnginx-1.20.0\/src\/event\/ngx_event_connect.h\r\nnginx-1.20.0\/src\/event\/ngx_event_openssl.c\r\nnginx-1.20.0\/src\/event\/ngx_event_openssl.h\r\nnginx-1.20.0\/src\/event\/ngx_event_openssl_stapling.c\r\nnginx-1.20.0\/src\/event\/ngx_event_pipe.c\r\nnginx-1.20.0\/src\/event\/ngx_event_pipe.h\r\nnginx-1.20.0\/src\/event\/ngx_event_posted.c\r\nnginx-1.20.0\/src\/event\/ngx_event_posted.h\r\nnginx-1.20.0\/src\/event\/ngx_event_timer.c\r\nnginx-1.20.0\/src\/event\/ngx_event_timer.h\r\nnginx-1.20.0\/src\/event\/ngx_event_udp.c\r\nnginx-1.20.0\/src\/event\/modules\/ngx_devpoll_module.c\r\nnginx-1.20.0\/src\/event\/modules\/ngx_epoll_module.c\r\nnginx-1.20.0\/src\/event\/modules\/ngx_eventport_module.c\r\nnginx-1.20.0\/src\/event\/modules\/ngx_kqueue_module.c\r\nnginx-1.20.0\/src\/event\/modules\/ngx_poll_module.c\r\nnginx-1.20.0\/src\/event\/modules\/ngx_select_module.c\r\nnginx-1.20.0\/src\/event\/modules\/ngx_win32_poll_module.c\r\nnginx-1.20.0\/src\/event\/modules\/ngx_win32_select_module.c\r\nnginx-1.20.0\/src\/core\/nginx.c\r\nnginx-1.20.0\/src\/core\/nginx.h\r\nnginx-1.20.0\/src\/core\/ngx_array.c\r\nnginx-1.20.0\/src\/core\/ngx_array.h\r\nnginx-1.20.0\/src\/core\/ngx_buf.c\r\nnginx-1.20.0\/src\/core\/ngx_buf.h\r\nnginx-1.20.0\/src\/core\/ngx_conf_file.c\r\nnginx-1.20.0\/src\/core\/ngx_conf_file.h\r\nnginx-1.20.0\/src\/core\/ngx_config.h\r\nnginx-1.20.0\/src\/core\/ngx_connection.c\r\nnginx-1.20.0\/src\/core\/ngx_connection.h\r\nnginx-1.20.0\/src\/core\/ngx_core.h\r\nnginx-1.20.0\/src\/core\/ngx_cpuinfo.c\r\nnginx-1.20.0\/src\/core\/ngx_crc.h\r\nnginx-1.20.0\/src\/core\/ngx_crc32.c\r\nnginx-1.20.0\/src\/core\/ngx_crc32.h\r\nnginx-1.20.0\/src\/core\/ngx_crypt.c\r\nnginx-1.20.0\/src\/core\/ngx_crypt.h\r\nnginx-1.20.0\/src\/core\/ngx_cycle.c\r\nnginx-1.20.0\/src\/core\/ngx_cycle.h\r\nnginx-1.20.0\/src\/core\/ngx_file.c\r\nnginx-1.20.0\/src\/core\/ngx_file.h\r\nnginx-1.20.0\/src\/core\/ngx_hash.c\r\nnginx-1.20.0\/src\/core\/ngx_hash.h\r\nnginx-1.20.0\/src\/core\/ngx_inet.c\r\nnginx-1.20.0\/src\/core\/ngx_inet.h\r\nnginx-1.20.0\/src\/core\/ngx_list.c\r\nnginx-1.20.0\/src\/core\/ngx_list.h\r\nnginx-1.20.0\/src\/core\/ngx_log.c\r\nnginx-1.20.0\/src\/core\/ngx_log.h\r\nnginx-1.20.0\/src\/core\/ngx_md5.c\r\nnginx-1.20.0\/src\/core\/ngx_md5.h\r\nnginx-1.20.0\/src\/core\/ngx_module.c\r\nnginx-1.20.0\/src\/core\/ngx_module.h\r\nnginx-1.20.0\/src\/core\/ngx_murmurhash.c\r\nnginx-1.20.0\/src\/core\/ngx_murmurhash.h\r\nnginx-1.20.0\/src\/core\/ngx_open_file_cache.c\r\nnginx-1.20.0\/src\/core\/ngx_open_file_cache.h\r\nnginx-1.20.0\/src\/core\/ngx_output_chain.c\r\nnginx-1.20.0\/src\/core\/ngx_palloc.c\r\nnginx-1.20.0\/src\/core\/ngx_palloc.h\r\nnginx-1.20.0\/src\/core\/ngx_parse.c\r\nnginx-1.20.0\/src\/core\/ngx_parse.h\r\nnginx-1.20.0\/src\/core\/ngx_parse_time.c\r\nnginx-1.20.0\/src\/core\/ngx_queue.c\r\nnginx-1.20.0\/src\/core\/ngx_parse_time.h\r\nnginx-1.20.0\/src\/core\/ngx_proxy_protocol.c\r\nnginx-1.20.0\/src\/core\/ngx_proxy_protocol.h\r\nnginx-1.20.0\/src\/core\/ngx_queue.h\r\nnginx-1.20.0\/src\/core\/ngx_radix_tree.c\r\nnginx-1.20.0\/src\/core\/ngx_radix_tree.h\r\nnginx-1.20.0\/src\/core\/ngx_rbtree.c\r\nnginx-1.20.0\/src\/core\/ngx_rbtree.h\r\nnginx-1.20.0\/src\/core\/ngx_regex.c\r\nnginx-1.20.0\/src\/core\/ngx_regex.h\r\nnginx-1.20.0\/src\/core\/ngx_resolver.c\r\nnginx-1.20.0\/src\/core\/ngx_resolver.h\r\nnginx-1.20.0\/src\/core\/ngx_rwlock.c\r\nnginx-1.20.0\/src\/core\/ngx_rwlock.h\r\nnginx-1.20.0\/src\/core\/ngx_sha1.c\r\nnginx-1.20.0\/src\/core\/ngx_sha1.h\r\nnginx-1.20.0\/src\/core\/ngx_shmtx.c\r\nnginx-1.20.0\/src\/core\/ngx_shmtx.h\r\nnginx-1.20.0\/src\/core\/ngx_slab.c\r\nnginx-1.20.0\/src\/core\/ngx_slab.h\r\nnginx-1.20.0\/src\/core\/ngx_spinlock.c\r\nnginx-1.20.0\/src\/core\/ngx_string.c\r\nnginx-1.20.0\/src\/core\/ngx_string.h\r\nnginx-1.20.0\/src\/core\/ngx_syslog.c\r\nnginx-1.20.0\/src\/core\/ngx_syslog.h\r\nnginx-1.20.0\/src\/core\/ngx_thread_pool.c\r\nnginx-1.20.0\/src\/core\/ngx_thread_pool.h\r\nnginx-1.20.0\/src\/core\/ngx_times.c\r\nnginx-1.20.0\/src\/core\/ngx_times.h\r\nnginx-1.20.0\/contrib\/README\r\nnginx-1.20.0\/contrib\/geo2nginx.pl\r\nnginx-1.20.0\/contrib\/unicode2nginx\/\r\nnginx-1.20.0\/contrib\/vim\/\r\nnginx-1.20.0\/contrib\/vim\/ftdetect\/\r\nnginx-1.20.0\/contrib\/vim\/ftplugin\/\r\nnginx-1.20.0\/contrib\/vim\/indent\/\r\nnginx-1.20.0\/contrib\/vim\/syntax\/\r\nnginx-1.20.0\/contrib\/vim\/syntax\/nginx.vim\r\nnginx-1.20.0\/contrib\/vim\/indent\/nginx.vim\r\nnginx-1.20.0\/contrib\/vim\/ftplugin\/nginx.vim\r\nnginx-1.20.0\/contrib\/vim\/ftdetect\/nginx.vim\r\nnginx-1.20.0\/contrib\/unicode2nginx\/koi-utf\r\nnginx-1.20.0\/contrib\/unicode2nginx\/unicode-to-nginx.pl\r\nnginx-1.20.0\/contrib\/unicode2nginx\/win-utf\r\nnginx-1.20.0\/conf\/fastcgi.conf\r\nnginx-1.20.0\/conf\/fastcgi_params\r\nnginx-1.20.0\/conf\/koi-utf\r\nnginx-1.20.0\/conf\/koi-win\r\nnginx-1.20.0\/conf\/mime.types\r\nnginx-1.20.0\/conf\/nginx.conf\r\nnginx-1.20.0\/conf\/scgi_params\r\nnginx-1.20.0\/conf\/uwsgi_params\r\nnginx-1.20.0\/conf\/win-utf\r\nnginx-1.20.0\/auto\/cc\/\r\nnginx-1.20.0\/auto\/define\r\nnginx-1.20.0\/auto\/endianness\r\nnginx-1.20.0\/auto\/feature\r\nnginx-1.20.0\/auto\/have\r\nnginx-1.20.0\/auto\/have_headers\r\nnginx-1.20.0\/auto\/headers\r\nnginx-1.20.0\/auto\/include\r\nnginx-1.20.0\/auto\/init\r\nnginx-1.20.0\/auto\/install\r\nnginx-1.20.0\/auto\/lib\/\r\nnginx-1.20.0\/auto\/make\r\nnginx-1.20.0\/auto\/module\r\nnginx-1.20.0\/auto\/modules\r\nnginx-1.20.0\/auto\/nohave\r\nnginx-1.20.0\/auto\/options\r\nnginx-1.20.0\/auto\/os\/\r\nnginx-1.20.0\/auto\/sources\r\nnginx-1.20.0\/auto\/stubs\r\nnginx-1.20.0\/auto\/summary\r\nnginx-1.20.0\/auto\/threads\r\nnginx-1.20.0\/auto\/types\/\r\nnginx-1.20.0\/auto\/unix\r\nnginx-1.20.0\/auto\/types\/sizeof\r\nnginx-1.20.0\/auto\/types\/typedef\r\nnginx-1.20.0\/auto\/types\/uintptr_t\r\nnginx-1.20.0\/auto\/types\/value\r\nnginx-1.20.0\/auto\/os\/conf\r\nnginx-1.20.0\/auto\/os\/darwin\r\nnginx-1.20.0\/auto\/os\/freebsd\r\nnginx-1.20.0\/auto\/os\/linux\r\nnginx-1.20.0\/auto\/os\/solaris\r\nnginx-1.20.0\/auto\/os\/win32\r\nnginx-1.20.0\/auto\/lib\/conf\r\nnginx-1.20.0\/auto\/lib\/geoip\/\r\nnginx-1.20.0\/auto\/lib\/google-perftools\/\r\nnginx-1.20.0\/auto\/lib\/libatomic\/\r\nnginx-1.20.0\/auto\/lib\/libgd\/\r\nnginx-1.20.0\/auto\/lib\/libxslt\/\r\nnginx-1.20.0\/auto\/lib\/make\r\nnginx-1.20.0\/auto\/lib\/openssl\/\r\nnginx-1.20.0\/auto\/lib\/pcre\/\r\nnginx-1.20.0\/auto\/lib\/perl\/\r\nnginx-1.20.0\/auto\/lib\/zlib\/\r\nnginx-1.20.0\/auto\/lib\/zlib\/conf\r\nnginx-1.20.0\/auto\/lib\/zlib\/make\r\nnginx-1.20.0\/auto\/lib\/zlib\/makefile.bcc\r\nnginx-1.20.0\/auto\/lib\/zlib\/makefile.msvc\r\nnginx-1.20.0\/auto\/lib\/zlib\/makefile.owc\r\nnginx-1.20.0\/auto\/lib\/perl\/conf\r\nnginx-1.20.0\/auto\/lib\/perl\/make\r\nnginx-1.20.0\/auto\/lib\/pcre\/conf\r\nnginx-1.20.0\/auto\/lib\/pcre\/make\r\nnginx-1.20.0\/auto\/lib\/pcre\/makefile.bcc\r\nnginx-1.20.0\/auto\/lib\/pcre\/makefile.msvc\r\nnginx-1.20.0\/auto\/lib\/pcre\/makefile.owc\r\nnginx-1.20.0\/auto\/lib\/openssl\/conf\r\nnginx-1.20.0\/auto\/lib\/openssl\/make\r\nnginx-1.20.0\/auto\/lib\/openssl\/makefile.bcc\r\nnginx-1.20.0\/auto\/lib\/openssl\/makefile.msvc\r\nnginx-1.20.0\/auto\/lib\/libxslt\/conf\r\nnginx-1.20.0\/auto\/lib\/libgd\/conf\r\nnginx-1.20.0\/auto\/lib\/libatomic\/conf\r\nnginx-1.20.0\/auto\/lib\/libatomic\/make\r\nnginx-1.20.0\/auto\/lib\/google-perftools\/conf\r\nnginx-1.20.0\/auto\/lib\/geoip\/conf\r\nnginx-1.20.0\/auto\/cc\/acc\r\nnginx-1.20.0\/auto\/cc\/bcc\r\nnginx-1.20.0\/auto\/cc\/ccc\r\nnginx-1.20.0\/auto\/cc\/clang\r\nnginx-1.20.0\/auto\/cc\/conf\r\nnginx-1.20.0\/auto\/cc\/gcc\r\nnginx-1.20.0\/auto\/cc\/icc\r\nnginx-1.20.0\/auto\/cc\/msvc\r\nnginx-1.20.0\/auto\/cc\/name\r\nnginx-1.20.0\/auto\/cc\/owc\r\nnginx-1.20.0\/auto\/cc\/sunc\r\n<\/code><\/pre>\n<h2>\u914d\u7f6e\uff08\u751f\u6210Makefile\uff09<\/h2>\n<pre class=\"post-pre\"><code><span class=\"nv\">$cd<\/span> \/usr\/local\/src\r\n<span class=\"nv\">$cd<\/span> nginx-1.20.0\r\n<span class=\"nv\">$ls<\/span>\r\nauto  CHANGES  CHANGES.ru  conf  configure  contrib  html  LICENSE  man  README  src\r\n<span class=\"nv\">$.<\/span>\/configure\r\ncreating objs\/Makefile\r\n\r\nConfiguration summary\r\n  + using system PCRE library\r\n  + OpenSSL library is not used\r\n  + using system zlib library\r\n\r\n  nginx path prefix: <span class=\"s2\">\"\/usr\/local\/nginx\"<\/span>\r\n  nginx binary file: <span class=\"s2\">\"\/usr\/local\/nginx\/sbin\/nginx\"<\/span>\r\n  nginx modules path: <span class=\"s2\">\"\/usr\/local\/nginx\/modules\"<\/span>\r\n  nginx configuration prefix: <span class=\"s2\">\"\/usr\/local\/nginx\/conf\"<\/span>\r\n  nginx configuration file: <span class=\"s2\">\"\/usr\/local\/nginx\/conf\/nginx.conf\"<\/span>\r\n  nginx pid file: <span class=\"s2\">\"\/usr\/local\/nginx\/logs\/nginx.pid\"<\/span>\r\n  nginx error log file: <span class=\"s2\">\"\/usr\/local\/nginx\/logs\/error.log\"<\/span>\r\n  nginx http access log file: <span class=\"s2\">\"\/usr\/local\/nginx\/logs\/access.log\"<\/span>\r\n  nginx http client request body temporary files: <span class=\"s2\">\"client_body_temp\"<\/span>\r\n  nginx http proxy temporary files: <span class=\"s2\">\"proxy_temp\"<\/span>\r\n  nginx http fastcgi temporary files: <span class=\"s2\">\"fastcgi_temp\"<\/span>\r\n  nginx http uwsgi temporary files: <span class=\"s2\">\"uwsgi_temp\"<\/span>\r\n  nginx http scgi temporary files: <span class=\"s2\">\"scgi_temp\"<\/span>\r\n<\/code><\/pre>\n<h2>\u8fdb\u884c<\/h2>\n<pre class=\"post-pre\"><code><span class=\"nv\">$cd<\/span> \/usr\/local\/src\/nginx-1.20.0\r\n<span class=\"nv\">$make<\/span>\r\n<span class=\"nb\">sed<\/span> <span class=\"nt\">-e<\/span> <span class=\"s2\">\"s|%%PREFIX%%|\/usr\/local\/nginx|\"<\/span> <span class=\"se\">\\<\/span>\r\n        <span class=\"nt\">-e<\/span> <span class=\"s2\">\"s|%%PID_PATH%%|\/usr\/local\/nginx\/logs\/nginx.pid|\"<\/span> <span class=\"se\">\\<\/span>\r\n        <span class=\"nt\">-e<\/span> <span class=\"s2\">\"s|%%CONF_PATH%%|\/usr\/local\/nginx\/conf\/nginx.conf|\"<\/span> <span class=\"se\">\\<\/span>\r\n        <span class=\"nt\">-e<\/span> <span class=\"s2\">\"s|%%ERROR_LOG_PATH%%|\/usr\/local\/nginx\/logs\/error.log|\"<\/span> <span class=\"se\">\\<\/span>\r\n        &lt; man\/nginx.8 <span class=\"o\">&gt;<\/span> objs\/nginx.8\r\nmake[1]: Leaving directory <span class=\"sb\">`<\/span>\/usr\/local\/src\/nginx-1.20.0<span class=\"s1\">'\r\n<\/span><\/code><\/pre>\n<h2>\u5b89\u88c5<\/h2>\n<pre class=\"post-pre\"><code><span class=\"nv\">$sudo<\/span> make <span class=\"nb\">install\r\n<\/span>make <span class=\"nt\">-f<\/span> objs\/Makefile <span class=\"nb\">install\r\n<\/span>make[1]: Entering directory <span class=\"sb\">`<\/span>\/usr\/local\/src\/nginx-1.20.0<span class=\"s1\">'\r\ntest -d '<\/span>\/usr\/local\/nginx<span class=\"s1\">' || mkdir -p '<\/span>\/usr\/local\/nginx<span class=\"s1\">'\r\ntest -d '<\/span>\/usr\/local\/nginx\/sbin<span class=\"s1\">' \\\r\n        || mkdir -p '<\/span>\/usr\/local\/nginx\/sbin<span class=\"s1\">'\r\ntest ! -f '<\/span>\/usr\/local\/nginx\/sbin\/nginx<span class=\"s1\">' \\\r\n        || mv '<\/span>\/usr\/local\/nginx\/sbin\/nginx<span class=\"s1\">' \\\r\n                '<\/span>\/usr\/local\/nginx\/sbin\/nginx.old<span class=\"s1\">'\r\ncp objs\/nginx '<\/span>\/usr\/local\/nginx\/sbin\/nginx<span class=\"s1\">'\r\ntest -d '<\/span>\/usr\/local\/nginx\/conf<span class=\"s1\">' \\\r\n        || mkdir -p '<\/span>\/usr\/local\/nginx\/conf<span class=\"s1\">'\r\ncp conf\/koi-win '<\/span>\/usr\/local\/nginx\/conf<span class=\"s1\">'\r\ncp conf\/koi-utf '<\/span>\/usr\/local\/nginx\/conf<span class=\"s1\">'\r\ncp conf\/win-utf '<\/span>\/usr\/local\/nginx\/conf<span class=\"s1\">'\r\ntest -f '<\/span>\/usr\/local\/nginx\/conf\/mime.types<span class=\"s1\">' \\\r\n        || cp conf\/mime.types '<\/span>\/usr\/local\/nginx\/conf<span class=\"s1\">'\r\ncp conf\/mime.types '<\/span>\/usr\/local\/nginx\/conf\/mime.types.default<span class=\"s1\">'\r\ntest -f '<\/span>\/usr\/local\/nginx\/conf\/fastcgi_params<span class=\"s1\">' \\\r\n        || cp conf\/fastcgi_params '<\/span>\/usr\/local\/nginx\/conf<span class=\"s1\">'\r\ncp conf\/fastcgi_params \\\r\n        '<\/span>\/usr\/local\/nginx\/conf\/fastcgi_params.default<span class=\"s1\">'\r\ntest -f '<\/span>\/usr\/local\/nginx\/conf\/fastcgi.conf<span class=\"s1\">' \\\r\n        || cp conf\/fastcgi.conf '<\/span>\/usr\/local\/nginx\/conf<span class=\"s1\">'\r\ncp conf\/fastcgi.conf '<\/span>\/usr\/local\/nginx\/conf\/fastcgi.conf.default<span class=\"s1\">'\r\ntest -f '<\/span>\/usr\/local\/nginx\/conf\/uwsgi_params<span class=\"s1\">' \\\r\n        || cp conf\/uwsgi_params '<\/span>\/usr\/local\/nginx\/conf<span class=\"s1\">'\r\ncp conf\/uwsgi_params \\\r\n        '<\/span>\/usr\/local\/nginx\/conf\/uwsgi_params.default<span class=\"s1\">'\r\ntest -f '<\/span>\/usr\/local\/nginx\/conf\/scgi_params<span class=\"s1\">' \\\r\n        || cp conf\/scgi_params '<\/span>\/usr\/local\/nginx\/conf<span class=\"s1\">'\r\ncp conf\/scgi_params \\\r\n        '<\/span>\/usr\/local\/nginx\/conf\/scgi_params.default<span class=\"s1\">'\r\ntest -f '<\/span>\/usr\/local\/nginx\/conf\/nginx.conf<span class=\"s1\">' \\\r\n        || cp conf\/nginx.conf '<\/span>\/usr\/local\/nginx\/conf\/nginx.conf<span class=\"s1\">'\r\ncp conf\/nginx.conf '<\/span>\/usr\/local\/nginx\/conf\/nginx.conf.default<span class=\"s1\">'\r\ntest -d '<\/span>\/usr\/local\/nginx\/logs<span class=\"s1\">' \\\r\n        || mkdir -p '<\/span>\/usr\/local\/nginx\/logs<span class=\"s1\">'\r\ntest -d '<\/span>\/usr\/local\/nginx\/logs<span class=\"s1\">' \\\r\n        || mkdir -p '<\/span>\/usr\/local\/nginx\/logs<span class=\"s1\">'\r\ntest -d '<\/span>\/usr\/local\/nginx\/html<span class=\"s1\">' \\\r\n        || cp -R html '<\/span>\/usr\/local\/nginx<span class=\"s1\">'\r\ntest -d '<\/span>\/usr\/local\/nginx\/logs<span class=\"s1\">' \\\r\n        || mkdir -p '<\/span>\/usr\/local\/nginx\/logs<span class=\"s1\">'\r\nmake[1]: Leaving directory `\/usr\/local\/src\/nginx-1.20.0'<\/span>\r\n<\/code><\/pre>\n<h2>\u786e\u8ba4\u5b89\u88c5<\/h2>\n<pre class=\"post-pre\"><code><span class=\"nv\">$cd<\/span> \/usr\/local\/src\r\n<span class=\"nv\">$nginx<\/span> <span class=\"nt\">-v<\/span>\r\nbash: nginx: <span class=\"nb\">command <\/span>not found\r\n<\/code><\/pre>\n<p>\u627e\u4e0d\u5230nginx\uff0c\u62a5\u9519\u4e86\u3002<\/p>\n<h2>\u786e\u8ba4Makefile<\/h2>\n<pre class=\"post-pre\"><code><span class=\"nv\">$cat<\/span> \/usr\/local\/src\/nginx-1.20.0\/Makefile\r\n\r\ndefault:        build\r\n\r\nclean:\r\n        <span class=\"nb\">rm<\/span> <span class=\"nt\">-rf<\/span> Makefile objs\r\n\r\n.PHONY: default clean\r\n\r\nbuild:\r\n        <span class=\"si\">$(<\/span>MAKE<span class=\"si\">)<\/span> <span class=\"nt\">-f<\/span> objs\/Makefile\r\n\r\n<span class=\"nb\">install<\/span>:\r\n        <span class=\"si\">$(<\/span>MAKE<span class=\"si\">)<\/span> <span class=\"nt\">-f<\/span> objs\/Makefile <span class=\"nb\">install\r\n\r\n<\/span>modules:\r\n        <span class=\"si\">$(<\/span>MAKE<span class=\"si\">)<\/span> <span class=\"nt\">-f<\/span> objs\/Makefile modules\r\n\r\nupgrade:\r\n        \/usr\/local\/nginx\/sbin\/nginx <span class=\"nt\">-t<\/span>\r\n\r\n        <span class=\"nb\">kill<\/span> <span class=\"nt\">-USR2<\/span> <span class=\"sb\">`<\/span><span class=\"nb\">cat<\/span> \/usr\/local\/nginx\/logs\/nginx.pid<span class=\"sb\">`<\/span>\r\n        <span class=\"nb\">sleep <\/span>1\r\n        <span class=\"nb\">test<\/span> <span class=\"nt\">-f<\/span> \/usr\/local\/nginx\/logs\/nginx.pid.oldbin\r\n\r\n        <span class=\"nb\">kill<\/span> <span class=\"nt\">-QUIT<\/span> <span class=\"sb\">`<\/span><span class=\"nb\">cat<\/span> \/usr\/local\/nginx\/logs\/nginx.pid.oldbin<span class=\"sb\">`<\/span>\r\n\r\n.PHONY: build <span class=\"nb\">install <\/span>modules upgrade\r\n<\/code><\/pre>\n<p>\u770b\u8d77\u6765\u5728\/usr\/local\/nginx\/sbin\/\u76ee\u5f55\u4e0b\u751f\u6210\u4e86nginx\u3002<\/p>\n<pre class=\"post-pre\"><code><span class=\"nv\">$cd<\/span> \/usr\/local\/nginx\/sbin\r\n<span class=\"nv\">$ls<\/span> <span class=\"nt\">-lrt<\/span>\r\ntotal 8960\r\n<span class=\"nt\">-rwxr-xr-x<\/span> 1 root root 4584248 Feb 19 14:40 nginx.old\r\n<span class=\"nt\">-rwxr-xr-x<\/span> 1 root root 4584248 Feb 19 14:41 nginx\r\n\r\n<span class=\"nv\">$.<\/span>\/nginx <span class=\"nt\">-v<\/span>\r\nnginx version: nginx\/1.20.0\r\n<\/code><\/pre>\n<p>\u5c06nginx\u590d\u5236\u5230\/usr\/sbin\u76ee\u5f55\u4e2d<\/p>\n<pre class=\"post-pre\"><code><span class=\"nv\">$cp<\/span> nginx \/usr\/sbin\r\n<span class=\"nv\">$nginx<\/span> <span class=\"nt\">-v<\/span>\r\nnginx version: nginx\/1.20.0\r\n<\/code><\/pre>\n<h2>\u542f\u52a8nginx<\/h2>\n<pre class=\"post-pre\"><code>$systemctl start nginx\r\nFailed to start nginx.service: Unit not found.\r\n<\/code><\/pre>\n<p>\u51fa\u73b0\u4e86\u6ca1\u6709Nginx\u670d\u52a1\u7684\u9519\u8bef\u3002<\/p>\n<h2>\u5c06nginx\u6ce8\u518c\u4e3a\u670d\u52a1\u3002<\/h2>\n<pre class=\"post-pre\"><code><span class=\"nv\">$cd<\/span> \/usr\/lib\/systemd\/system\/\r\n<span class=\"nv\">$vi<\/span> nginx.service\r\n<\/code><\/pre>\n<p>nginx.service\u7684\u5185\u5bb9\u5982\u4e0b\u6240\u793a\u3002<\/p>\n<pre class=\"post-pre\"><code>[Unit]\r\nDescription=The nginx HTTP and reverse proxy server\r\nAfter=network.target remote-fs.target nss-lookup.target\r\n\r\n[Service]\r\nType=forking\r\nPIDFile=\/run\/nginx.pid\r\n# Nginx will fail to start if \/run\/nginx.pid already exists but has the wrong\r\n# SELinux context. This might happen when running `nginx -t` from the cmdline.\r\n# https:\/\/bugzilla.redhat.com\/show_bug.cgi?id=1268621\r\nExecStartPre=\/usr\/bin\/rm -f \/run\/nginx.pid\r\nExecStartPre=\/usr\/sbin\/nginx -t\r\nExecStart=\/usr\/sbin\/nginx\r\nExecReload=\/bin\/kill -s HUP $MAINPID\r\nKillSignal=SIGQUIT\r\nTimeoutStopSec=5\r\nKillMode=mixed\r\nPrivateTmp=true\r\nRestart=always\r\n\r\n[Install]\r\nWantedBy=multi-user.target\r\n<\/code><\/pre>\n<h2>\u91cd\u65b0\u52a0\u8f7dsystemd\u3002<\/h2>\n<pre class=\"post-pre\"><code><span class=\"nv\">$systemctl<\/span> daemon-reload\r\n<\/code><\/pre>\n<pre class=\"post-pre\"><code><span class=\"nv\">$systemctl<\/span> <span class=\"nb\">enable <\/span>nginx.service\r\nCreated symlink from \/etc\/systemd\/system\/multi-user.target.wants\/nginx.service to \/usr\/lib\/systemd\/system\/nginx.service.\r\n\r\n<span class=\"nv\">$systemctl<\/span> start nginx.service\r\nJob <span class=\"k\">for <\/span>nginx.service failed because the control process exited with error code. See <span class=\"s2\">\"systemctl status nginx.service\"<\/span> and <span class=\"s2\">\"journalctl -xe\"<\/span> <span class=\"k\">for <\/span>details.\r\n<\/code><\/pre>\n<p>\u53e6\u5916\uff0c\u53d1\u751f\u4e86\u53e6\u4e00\u4e2a\u9519\u8bef\u3002<\/p>\n<h2>\u8bd5\u7740\u68c0\u67e5\u4e00\u4e0bnginx\u7684\u72b6\u6001<\/h2>\n<pre class=\"post-pre\"><code><span class=\"nv\">$systemctl<\/span> status nginx.service\r\n\u25cf nginx.service - The nginx HTTP and reverse proxy server\r\n   Loaded: loaded <span class=\"o\">(<\/span>\/usr\/lib\/systemd\/system\/nginx.service<span class=\"p\">;<\/span> enabled<span class=\"p\">;<\/span> vendor preset: disabled<span class=\"o\">)<\/span>\r\n   Active: activating <span class=\"o\">(<\/span>start<span class=\"o\">)<\/span> since Sat 2022-02-19 15:11:54 UTC<span class=\"p\">;<\/span> 1s ago\r\n  Process: 20451 <span class=\"nv\">ExecStartPre<\/span><span class=\"o\">=<\/span>\/usr\/sbin\/nginx <span class=\"nt\">-t<\/span> <span class=\"o\">(<\/span><span class=\"nv\">code<\/span><span class=\"o\">=<\/span>exited, <span class=\"nv\">status<\/span><span class=\"o\">=<\/span>0\/SUCCESS<span class=\"o\">)<\/span>\r\n  Process: 20450 <span class=\"nv\">ExecStartPre<\/span><span class=\"o\">=<\/span>\/usr\/bin\/rm <span class=\"nt\">-f<\/span> \/run\/nginx.pid <span class=\"o\">(<\/span><span class=\"nv\">code<\/span><span class=\"o\">=<\/span>exited, <span class=\"nv\">status<\/span><span class=\"o\">=<\/span>0\/SUCCESS<span class=\"o\">)<\/span>\r\n  Control: 20455 <span class=\"o\">(<\/span>nginx<span class=\"o\">)<\/span>\r\n   CGroup: \/system.slice\/nginx.service\r\n           mq20455 \/usr\/sbin\/nginx\r\n\r\nFeb 19 15:11:54 ip-172-31-22-226.ec2.internal systemd[1]: nginx.service holdoff <span class=\"nb\">time <\/span>over, scheduling restart.\r\nFeb 19 15:11:54 ip-172-31-22-226.ec2.internal systemd[1]: Stopped The nginx HTTP and reverse proxy server.\r\nFeb 19 15:11:54 ip-172-31-22-226.ec2.internal systemd[1]: Starting The nginx HTTP and reverse proxy server...\r\nFeb 19 15:11:54 ip-172-31-22-226.ec2.internal nginx[20451]: nginx: the configuration file \/usr\/local\/nginx\/conf\/nginx.conf syntax is ok\r\nFeb 19 15:11:54 ip-172-31-22-226.ec2.internal nginx[20451]: nginx: configuration file \/usr\/local\/nginx\/conf\/nginx.conf <span class=\"nb\">test <\/span>is successful\r\nFeb 19 15:11:54 ip-172-31-22-226.ec2.internal nginx[20455]: nginx: <span class=\"o\">[<\/span>emerg] <span class=\"nb\">bind<\/span><span class=\"o\">()<\/span> to 0.0.0.0:80 failed <span class=\"o\">(<\/span>98: Address already <span class=\"k\">in <\/span>use<span class=\"o\">)<\/span>\r\nFeb 19 15:11:55 ip-172-31-22-226.ec2.internal nginx[20455]: nginx: <span class=\"o\">[<\/span>emerg] <span class=\"nb\">bind<\/span><span class=\"o\">()<\/span> to 0.0.0.0:80 failed <span class=\"o\">(<\/span>98: Address already <span class=\"k\">in <\/span>use<span class=\"o\">)<\/span>\r\nFeb 19 15:11:55 ip-172-31-22-226.ec2.internal nginx[20455]: nginx: <span class=\"o\">[<\/span>emerg] <span class=\"nb\">bind<\/span><span class=\"o\">()<\/span> to 0.0.0.0:80 failed <span class=\"o\">(<\/span>98: Address already <span class=\"k\">in <\/span>use<span class=\"o\">)<\/span>\r\n<\/code><\/pre>\n<p>\u770b\u8d77\u6765\uff0c\u7ed1\u5b9a\u7aef\u53e380\u7684\u5957\u63a5\u5b57\u5931\u8d25\u4e86\u3002<\/p>\n<h1>AWS\u30b3\u30f3\u30bd\u30fc\u30eb\u306b\u3066\u3001EC2\u306e\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30b0\u30eb\u30fc\u30d7\u306e\u30a4\u30f3\u30d0\u30a6\u30f3\u30c9\u30eb\u30fc\u30eb\u306bHTTP(\u30dd\u30fc\u30c880)\u3092\u8ffd\u52a0\u3059\u308b\u3002<\/h1>\n<h2>\u30a8\u30e9\u30fc\u306f\u89e3\u6d88\u3055\u308c\u305a\u30fb\u30fb\u30fb<\/h2>\n<pre class=\"post-pre\"><code>systemctl status nginx.service\r\n\u25cf nginx.service - The nginx HTTP and reverse proxy server\r\n   Loaded: loaded <span class=\"o\">(<\/span>\/usr\/lib\/systemd\/system\/nginx.service<span class=\"p\">;<\/span> enabled<span class=\"p\">;<\/span> vendor preset: disabled<span class=\"o\">)<\/span>\r\n   Active: activating <span class=\"o\">(<\/span>start<span class=\"o\">)<\/span> since Sat 2022-02-19 15:20:16 UTC<span class=\"p\">;<\/span> 2s ago\r\n  Process: 22359 <span class=\"nv\">ExecStartPre<\/span><span class=\"o\">=<\/span>\/usr\/sbin\/nginx <span class=\"nt\">-t<\/span> <span class=\"o\">(<\/span><span class=\"nv\">code<\/span><span class=\"o\">=<\/span>exited, <span class=\"nv\">status<\/span><span class=\"o\">=<\/span>0\/SUCCESS<span class=\"o\">)<\/span>\r\n  Process: 22358 <span class=\"nv\">ExecStartPre<\/span><span class=\"o\">=<\/span>\/usr\/bin\/rm <span class=\"nt\">-f<\/span> \/run\/nginx.pid <span class=\"o\">(<\/span><span class=\"nv\">code<\/span><span class=\"o\">=<\/span>exited, <span class=\"nv\">status<\/span><span class=\"o\">=<\/span>0\/SUCCESS<span class=\"o\">)<\/span>\r\n  Control: 22363 <span class=\"o\">(<\/span>nginx<span class=\"o\">)<\/span>\r\n   CGroup: \/system.slice\/nginx.service\r\n           mq22363 \/usr\/sbin\/nginx\r\n\r\nFeb 19 15:20:16 ip-172-31-22-226.ec2.internal systemd[1]: nginx.service holdoff <span class=\"nb\">time <\/span>over, scheduling restart.\r\nFeb 19 15:20:16 ip-172-31-22-226.ec2.internal systemd[1]: Stopped The nginx HTTP and reverse proxy server.\r\nFeb 19 15:20:16 ip-172-31-22-226.ec2.internal systemd[1]: Starting The nginx HTTP and reverse proxy server...\r\nFeb 19 15:20:16 ip-172-31-22-226.ec2.internal nginx[22359]: nginx: the configuration file \/usr\/local\/nginx\/conf\/nginx.conf syntax is ok\r\nFeb 19 15:20:16 ip-172-31-22-226.ec2.internal nginx[22359]: nginx: configuration file \/usr\/local\/nginx\/conf\/nginx.conf <span class=\"nb\">test <\/span>is successful\r\nFeb 19 15:20:16 ip-172-31-22-226.ec2.internal nginx[22363]: nginx: <span class=\"o\">[<\/span>emerg] <span class=\"nb\">bind<\/span><span class=\"o\">()<\/span> to 0.0.0.0:80 failed <span class=\"o\">(<\/span>98: Address already <span class=\"k\">in <\/span>use<span class=\"o\">)<\/span>\r\nFeb 19 15:20:16 ip-172-31-22-226.ec2.internal nginx[22363]: nginx: <span class=\"o\">[<\/span>emerg] <span class=\"nb\">bind<\/span><span class=\"o\">()<\/span> to 0.0.0.0:80 failed <span class=\"o\">(<\/span>98: Address already <span class=\"k\">in <\/span>use<span class=\"o\">)<\/span>\r\nFeb 19 15:20:17 ip-172-31-22-226.ec2.internal nginx[22363]: nginx: <span class=\"o\">[<\/span>emerg] <span class=\"nb\">bind<\/span><span class=\"o\">()<\/span> to 0.0.0.0:80 failed <span class=\"o\">(<\/span>98: Address already <span class=\"k\">in <\/span>use<span class=\"o\">)<\/span>\r\nFeb 19 15:20:17 ip-172-31-22-226.ec2.internal nginx[22363]: nginx: <span class=\"o\">[<\/span>emerg] <span class=\"nb\">bind<\/span><span class=\"o\">()<\/span> to 0.0.0.0:80 failed <span class=\"o\">(<\/span>98: Address already <span class=\"k\">in <\/span>use<span class=\"o\">)<\/span>\r\nFeb 19 15:20:18 ip-172-31-22-226.ec2.internal nginx[22363]: nginx: <span class=\"o\">[<\/span>emerg] <span class=\"nb\">bind<\/span><span class=\"o\">()<\/span> to 0.0.0.0:80 failed <span class=\"o\">(<\/span>98: Address already <span class=\"k\">in <\/span>use<span class=\"o\">)<\/span>\r\n<\/code><\/pre>\n<h2>\u6211\u4f1a\u7528lsof\u67e5\u4e00\u4e0b\u3002<\/h2>\n<pre class=\"post-pre\"><code><span class=\"nv\">$sudo<\/span> lsof <span class=\"nt\">-i<\/span>:80\r\nCOMMAND   PID   USER   FD   TYPE DEVICE SIZE\/OFF NODE NAME\r\nnginx   19679   root    6u  IPv4  72610      0t0  TCP <span class=\"k\">*<\/span>:http <span class=\"o\">(<\/span>LISTEN<span class=\"o\">)<\/span>\r\nnginx   19680 nobody    6u  IPv4  72610      0t0  TCP <span class=\"k\">*<\/span>:http <span class=\"o\">(<\/span>LISTEN<span class=\"o\">)<\/span>\r\n<\/code><\/pre>\n<p>\u597d\u50cfNginx\u5df2\u7ecf\u88ab\u542f\u52a8\u4e86&#8230;<\/p>\n<h2>\u9519\u8bef\u5185\u5bb9\u7a0d\u5fae\u6709\u4e9b\u6539\u53d8<\/h2>\n<pre class=\"post-pre\"><code><span class=\"nv\">$systemctl<\/span> status nginx\r\n\u25cf nginx.service - The nginx HTTP and reverse proxy server\r\n   Loaded: loaded <span class=\"o\">(<\/span>\/usr\/lib\/systemd\/system\/nginx.service<span class=\"p\">;<\/span> enabled<span class=\"p\">;<\/span> vendor preset: disabled<span class=\"o\">)<\/span>\r\n   Active: activating <span class=\"o\">(<\/span>start<span class=\"o\">)<\/span> since Sat 2022-02-19 15:26:57 UTC<span class=\"p\">;<\/span> 38s ago\r\n  Process: 3199 <span class=\"nv\">ExecStart<\/span><span class=\"o\">=<\/span>\/usr\/sbin\/nginx <span class=\"o\">(<\/span><span class=\"nv\">code<\/span><span class=\"o\">=<\/span>exited, <span class=\"nv\">status<\/span><span class=\"o\">=<\/span>0\/SUCCESS<span class=\"o\">)<\/span>\r\n  Process: 3196 <span class=\"nv\">ExecStartPre<\/span><span class=\"o\">=<\/span>\/usr\/sbin\/nginx <span class=\"nt\">-t<\/span> <span class=\"o\">(<\/span><span class=\"nv\">code<\/span><span class=\"o\">=<\/span>exited, <span class=\"nv\">status<\/span><span class=\"o\">=<\/span>0\/SUCCESS<span class=\"o\">)<\/span>\r\n  Process: 3194 <span class=\"nv\">ExecStartPre<\/span><span class=\"o\">=<\/span>\/usr\/bin\/rm <span class=\"nt\">-f<\/span> \/run\/nginx.pid <span class=\"o\">(<\/span><span class=\"nv\">code<\/span><span class=\"o\">=<\/span>exited, <span class=\"nv\">status<\/span><span class=\"o\">=<\/span>0\/SUCCESS<span class=\"o\">)<\/span>\r\n   CGroup: \/system.slice\/nginx.service\r\n           tq3201 nginx: master process \/usr\/sbin\/nginx\r\n           mq3202 nginx: worker process\r\n\r\nFeb 19 15:26:57 ip-172-31-22-226.ec2.internal systemd[1]: Stopped The nginx HTTP and reverse proxy server.\r\nFeb 19 15:26:57 ip-172-31-22-226.ec2.internal systemd[1]: Starting The nginx HTTP and reverse proxy server...\r\nFeb 19 15:26:57 ip-172-31-22-226.ec2.internal nginx[3196]: nginx: the configuration file \/usr\/local\/nginx\/conf\/nginx.conf syntax is ok\r\nFeb 19 15:26:57 ip-172-31-22-226.ec2.internal nginx[3196]: nginx: configuration file \/usr\/local\/nginx\/conf\/nginx.conf <span class=\"nb\">test <\/span>is successful\r\nFeb 19 15:26:58 ip-172-31-22-226.ec2.internal systemd[1]: Can<span class=\"s1\">'t open PID file \/run\/nginx.pid (yet?) after start: No such file or directory\r\n<\/span><\/code><\/pre>\n<p>PID\u30d5\u30a1\u30a4\u30eb\u304c\u958b\u3051\u306a\u3044\u3088\u3046\u3060\u3002<\/p>\n<h2>\u67e5\u770bMakefile\u3002<\/h2>\n<pre class=\"post-pre\"><code><span class=\"nv\">$cat<\/span> \/usr\/local\/src\/nginx-1.20.0\/Makefile\r\n\r\ndefault:        build\r\n\r\nclean:\r\n        <span class=\"nb\">rm<\/span> <span class=\"nt\">-rf<\/span> Makefile objs\r\n\r\n.PHONY: default clean\r\n\r\nbuild:\r\n        <span class=\"si\">$(<\/span>MAKE<span class=\"si\">)<\/span> <span class=\"nt\">-f<\/span> objs\/Makefile\r\n\r\n<span class=\"nb\">install<\/span>:\r\n        <span class=\"si\">$(<\/span>MAKE<span class=\"si\">)<\/span> <span class=\"nt\">-f<\/span> objs\/Makefile <span class=\"nb\">install\r\n\r\n<\/span>modules:\r\n        <span class=\"si\">$(<\/span>MAKE<span class=\"si\">)<\/span> <span class=\"nt\">-f<\/span> objs\/Makefile modules\r\n\r\nupgrade:\r\n        \/usr\/local\/nginx\/sbin\/nginx <span class=\"nt\">-t<\/span>\r\n\r\n        <span class=\"nb\">kill<\/span> <span class=\"nt\">-USR2<\/span> <span class=\"sb\">`<\/span><span class=\"nb\">cat<\/span> \/usr\/local\/nginx\/logs\/nginx.pid<span class=\"sb\">`<\/span>\r\n        <span class=\"nb\">sleep <\/span>1\r\n        <span class=\"nb\">test<\/span> <span class=\"nt\">-f<\/span> \/usr\/local\/nginx\/logs\/nginx.pid.oldbin\r\n\r\n        <span class=\"nb\">kill<\/span> <span class=\"nt\">-QUIT<\/span> <span class=\"sb\">`<\/span><span class=\"nb\">cat<\/span> \/usr\/local\/nginx\/logs\/nginx.pid.oldbin<span class=\"sb\">`<\/span>\r\n\r\n.PHONY: build <span class=\"nb\">install <\/span>modules upgrade\r\n<\/code><\/pre>\n<p>Makefile\u306e\/usr\/local\/nginx\/logs\/nginx.pid\u3068nginx.service\u306ePIDFile=\/run\/nginx.pid\u306f\u4e00\u81f4\u3055\u305b\u308b\u5fc5\u8981\u304c\u3042\u308b\u306e\u304b\u3082\u77e5\u308c\u306a\u3044\u3002\u3068\u308a\u3042\u3048\u305a\u3001nginx.service\u306ePIDFile=\/run\/nginx.pid\u3092PIDFile=\/usr\/local\/nginx\/logs\/nginx.pid\u306b\u5909\u66f4\u3057\u3066\u307f\u308b\u3002<\/p>\n<pre class=\"post-pre\"><code>$vi \/usr\/lib\/systemd\/system\/nginx.service\r\n<\/code><\/pre>\n<pre class=\"post-pre\"><code>[Unit]\r\nDescription=The nginx HTTP and reverse proxy server\r\nAfter=network.target remote-fs.target nss-lookup.target\r\n\r\n[Service]\r\nType=forking\r\n#PIDFile=\/run\/nginx.pid \u2190\u30b3\u30e1\u30f3\u30c8\u30a2\u30a6\u30c8\r\nPIDFile=\/usr\/local\/nginx\/logs\/nginx.pid \u2190\u8ffd\u52a0\r\n# Nginx will fail to start if \/run\/nginx.pid already exists but has the wrong\r\n# SELinux context. This might happen when running `nginx -t` from the cmdline.\r\n# https:\/\/bugzilla.redhat.com\/show_bug.cgi?id=1268621\r\nExecStartPre=\/usr\/bin\/rm -f \/run\/nginx.pid\r\nExecStartPre=\/usr\/sbin\/nginx -t\r\nExecStart=\/usr\/sbin\/nginx\r\nExecReload=\/bin\/kill -s HUP $MAINPID\r\nKillSignal=SIGQUIT\r\nTimeoutStopSec=5\r\nKillMode=mixed\r\nPrivateTmp=true\r\nRestart=always\r\n\r\n[Install]\r\nWantedBy=multi-user.target\r\n<\/code><\/pre>\n<h2>\u30c7\u30fc\u30e2\u30f3\u3092\u30ea\u30ed\u30fc\u30c9\u3059\u308b\u3002<\/h2>\n<pre class=\"post-pre\"><code><span class=\"nv\">$systemctl<\/span> daemon-reload\r\n<\/code><\/pre>\n<h2>nginx.service\u306e\u8d77\u52d5\u306b\u3084\u3063\u3068\u6210\u529f\u3057\u305f\uff01\uff01<\/h2>\n<pre class=\"post-pre\"><code><span class=\"nv\">$systemctl<\/span> restart nginx.service\r\n<span class=\"nv\">$systemctl<\/span> status nginx.service\r\n\u25cf nginx.service - The nginx HTTP and reverse proxy server\r\n   Loaded: loaded <span class=\"o\">(<\/span>\/usr\/lib\/systemd\/system\/nginx.service<span class=\"p\">;<\/span> enabled<span class=\"p\">;<\/span> vendor preset: disabled<span class=\"o\">)<\/span>\r\n   Active: active <span class=\"o\">(<\/span>running<span class=\"o\">)<\/span> since Sat 2022-02-19 15:45:11 UTC<span class=\"p\">;<\/span> 24s ago\r\n  Process: 3540 <span class=\"nv\">ExecStart<\/span><span class=\"o\">=<\/span>\/usr\/sbin\/nginx <span class=\"o\">(<\/span><span class=\"nv\">code<\/span><span class=\"o\">=<\/span>exited, <span class=\"nv\">status<\/span><span class=\"o\">=<\/span>0\/SUCCESS<span class=\"o\">)<\/span>\r\n  Process: 3537 <span class=\"nv\">ExecStartPre<\/span><span class=\"o\">=<\/span>\/usr\/sbin\/nginx <span class=\"nt\">-t<\/span> <span class=\"o\">(<\/span><span class=\"nv\">code<\/span><span class=\"o\">=<\/span>exited, <span class=\"nv\">status<\/span><span class=\"o\">=<\/span>0\/SUCCESS<span class=\"o\">)<\/span>\r\n  Process: 3535 <span class=\"nv\">ExecStartPre<\/span><span class=\"o\">=<\/span>\/usr\/bin\/rm <span class=\"nt\">-f<\/span> \/run\/nginx.pid <span class=\"o\">(<\/span><span class=\"nv\">code<\/span><span class=\"o\">=<\/span>exited, <span class=\"nv\">status<\/span><span class=\"o\">=<\/span>0\/SUCCESS<span class=\"o\">)<\/span>\r\n Main PID: 3543 <span class=\"o\">(<\/span>nginx<span class=\"o\">)<\/span>\r\n   CGroup: \/system.slice\/nginx.service\r\n           tq3543 nginx: master process \/usr\/sbin\/nginx\r\n           mq3545 nginx: worker process\r\n\r\n<\/code><\/pre>\n<h1>\u8ff7\u604b\u70b9<\/h1>\n<p>\u6211\u9047\u5230\u7684\u4e3b\u8981\u95ee\u9898\u662f\u4f7f\u7528systemctl restart nginx.service\u547d\u4ee4\u65f6\u51fa\u9519\u6216\u672a\u8fd4\u56de\u63d0\u793a\u7b26\u3002\u5f53\u4f7f\u7528systemctl status nginx.service\u547d\u4ee4\u67e5\u770b\u72b6\u6001\u65f6\uff0c\u53d1\u73b0\u65e0\u6cd5\u6253\u5f00pid\u6587\u4ef6\u3002\u4e5f\u8bb8\u9700\u8981\u5c06Makefile\u4e2d\u7684\/usr\/local\/nginx\/logs\/nginx.pid\u4e0enginx.service\u4e2d\u7684PIDFile=\/run\/nginx.pid\u4fdd\u6301\u4e00\u81f4\u3002\u6682\u65f6\u5148\u5c06nginx.service\u4e2d\u7684PIDFile=\/run\/nginx.pid\u66f4\u6539\u4e3aPIDFile=\/usr\/local\/nginx\/logs\/nginx.pid\uff0c\u7136\u540e\u6267\u884csystemctl daemon reload\u547d\u4ee4\uff0c\u6210\u529f\u89e3\u51b3\u4e86\u95ee\u9898\u3002<\/p>\n<h3>Makefile\u7684\u8def\u5f84\u662f\/usr\/local\/src\/nginx-1.20.0\/Makefile\u3002<\/h3>\n<p>\u6740\u6b7b -USR2 \/usr\/local\/nginx\/logs\/nginx.pid \u4e2d\u7684 cat \u547d\u4ee4\u3002<\/p>\n<h3>nginx\u670d\u52a1\uff1a\/usr\/lib\/systemd\/system\/nginx.service<\/h3>\n<p>PID\u6587\u4ef6\u4f4d\u7f6e\u4e3a\/usr\/local\/nginx\/logs\/nginx.pid\u3002<\/p>\n<h1>\u2191\u2191\u2191\u8fd9\u6837\u624d\u80fd\u4f7fnginx.pid\u5339\u914d\uff01<\/h1>\n<h1>\u6700\u540e<\/h1>\n<p>\u5728Amazon Linux2\u4e0a\u6210\u529f\u5730\u4f7f\u7528\u6e90\u4ee3\u7801\u6784\u5efa\u548c\u542f\u52a8\u4e86Nginx\uff0c\u65e0\u95ee\u9898\u3002<br \/>\n\u90a3\u4e48\uff0c\u518d\u89c1\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u9996\u5148 \u5728\u5b89\u88c5Amazon Linux2\u4e0a\u7684Nginx\u6e90\u7801\u65f6\u7684\u5907\u5fd8\u5f55 \u73af\u5883 \u4e9a\u9a6c\u900a Linux 2 AMI\uff08HV [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-32961","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>\u4f7f\u7528\u6e90\u4ee3\u7801\u6784\u5efa\u5e76\u5b89\u88c5Nginx\u5230Amazon Linux 2 - Blog - Silicon Cloud<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/zh\/blog\/\u4f7f\u7528\u6e90\u4ee3\u7801\u6784\u5efa\u5e76\u5b89\u88c5nginx\u5230amazon-linux-2\/\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u4f7f\u7528\u6e90\u4ee3\u7801\u6784\u5efa\u5e76\u5b89\u88c5Nginx\u5230Amazon Linux 2\" \/>\n<meta property=\"og:description\" content=\"\u9996\u5148 \u5728\u5b89\u88c5Amazon Linux2\u4e0a\u7684Nginx\u6e90\u7801\u65f6\u7684\u5907\u5fd8\u5f55 \u73af\u5883 \u4e9a\u9a6c\u900a Linux 2 AMI\uff08HV [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/zh\/blog\/\u4f7f\u7528\u6e90\u4ee3\u7801\u6784\u5efa\u5e76\u5b89\u88c5nginx\u5230amazon-linux-2\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:published_time\" content=\"2023-11-12T18:48:27+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-04-30T10:02:01+00:00\" \/>\n<meta name=\"author\" content=\"\u97f5, \u79d1\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"\u97f5, \u79d1\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data2\" content=\"29 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e4%bd%bf%e7%94%a8%e6%ba%90%e4%bb%a3%e7%a0%81%e6%9e%84%e5%bb%ba%e5%b9%b6%e5%ae%89%e8%a3%85nginx%e5%88%b0amazon-linux-2\/\",\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e4%bd%bf%e7%94%a8%e6%ba%90%e4%bb%a3%e7%a0%81%e6%9e%84%e5%bb%ba%e5%b9%b6%e5%ae%89%e8%a3%85nginx%e5%88%b0amazon-linux-2\/\",\"name\":\"\u4f7f\u7528\u6e90\u4ee3\u7801\u6784\u5efa\u5e76\u5b89\u88c5Nginx\u5230Amazon Linux 2 - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#website\"},\"datePublished\":\"2023-11-12T18:48:27+00:00\",\"dateModified\":\"2024-04-30T10:02:01+00:00\",\"author\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/6530331a63adef3b3443a1fab53a0e6e\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e4%bd%bf%e7%94%a8%e6%ba%90%e4%bb%a3%e7%a0%81%e6%9e%84%e5%bb%ba%e5%b9%b6%e5%ae%89%e8%a3%85nginx%e5%88%b0amazon-linux-2\/#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/zh\/blog\/%e4%bd%bf%e7%94%a8%e6%ba%90%e4%bb%a3%e7%a0%81%e6%9e%84%e5%bb%ba%e5%b9%b6%e5%ae%89%e8%a3%85nginx%e5%88%b0amazon-linux-2\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e4%bd%bf%e7%94%a8%e6%ba%90%e4%bb%a3%e7%a0%81%e6%9e%84%e5%bb%ba%e5%b9%b6%e5%ae%89%e8%a3%85nginx%e5%88%b0amazon-linux-2\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"https:\/\/www.silicloud.com\/zh\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u4f7f\u7528\u6e90\u4ee3\u7801\u6784\u5efa\u5e76\u5b89\u88c5Nginx\u5230Amazon Linux 2\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/\",\"name\":\"Blog - Silicon Cloud\",\"description\":\"\",\"inLanguage\":\"zh-Hans\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/6530331a63adef3b3443a1fab53a0e6e\",\"name\":\"\u97f5, \u79d1\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/429ccb39b3fff5188bc17986222cfb0936cbadb8cc933cff04ab5ca01bd30a08?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/429ccb39b3fff5188bc17986222cfb0936cbadb8cc933cff04ab5ca01bd30a08?s=96&d=mm&r=g\",\"caption\":\"\u97f5, \u79d1\"},\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/author\/yunke\/\"},{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e4%bd%bf%e7%94%a8%e6%ba%90%e4%bb%a3%e7%a0%81%e6%9e%84%e5%bb%ba%e5%b9%b6%e5%ae%89%e8%a3%85nginx%e5%88%b0amazon-linux-2\/#local-main-organization-logo\",\"url\":\"\",\"contentUrl\":\"\",\"caption\":\"Blog - Silicon Cloud\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"\u4f7f\u7528\u6e90\u4ee3\u7801\u6784\u5efa\u5e76\u5b89\u88c5Nginx\u5230Amazon Linux 2 - Blog - Silicon Cloud","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/zh\/blog\/\u4f7f\u7528\u6e90\u4ee3\u7801\u6784\u5efa\u5e76\u5b89\u88c5nginx\u5230amazon-linux-2\/","og_locale":"zh_CN","og_type":"article","og_title":"\u4f7f\u7528\u6e90\u4ee3\u7801\u6784\u5efa\u5e76\u5b89\u88c5Nginx\u5230Amazon Linux 2","og_description":"\u9996\u5148 \u5728\u5b89\u88c5Amazon Linux2\u4e0a\u7684Nginx\u6e90\u7801\u65f6\u7684\u5907\u5fd8\u5f55 \u73af\u5883 \u4e9a\u9a6c\u900a Linux 2 AMI\uff08HV [&hellip;]","og_url":"https:\/\/www.silicloud.com\/zh\/blog\/\u4f7f\u7528\u6e90\u4ee3\u7801\u6784\u5efa\u5e76\u5b89\u88c5nginx\u5230amazon-linux-2\/","og_site_name":"Blog - Silicon Cloud","article_published_time":"2023-11-12T18:48:27+00:00","article_modified_time":"2024-04-30T10:02:01+00:00","author":"\u97f5, \u79d1","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005":"\u97f5, \u79d1","\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"29 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e4%bd%bf%e7%94%a8%e6%ba%90%e4%bb%a3%e7%a0%81%e6%9e%84%e5%bb%ba%e5%b9%b6%e5%ae%89%e8%a3%85nginx%e5%88%b0amazon-linux-2\/","url":"https:\/\/www.silicloud.com\/zh\/blog\/%e4%bd%bf%e7%94%a8%e6%ba%90%e4%bb%a3%e7%a0%81%e6%9e%84%e5%bb%ba%e5%b9%b6%e5%ae%89%e8%a3%85nginx%e5%88%b0amazon-linux-2\/","name":"\u4f7f\u7528\u6e90\u4ee3\u7801\u6784\u5efa\u5e76\u5b89\u88c5Nginx\u5230Amazon Linux 2 - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/#website"},"datePublished":"2023-11-12T18:48:27+00:00","dateModified":"2024-04-30T10:02:01+00:00","author":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/6530331a63adef3b3443a1fab53a0e6e"},"breadcrumb":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e4%bd%bf%e7%94%a8%e6%ba%90%e4%bb%a3%e7%a0%81%e6%9e%84%e5%bb%ba%e5%b9%b6%e5%ae%89%e8%a3%85nginx%e5%88%b0amazon-linux-2\/#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/zh\/blog\/%e4%bd%bf%e7%94%a8%e6%ba%90%e4%bb%a3%e7%a0%81%e6%9e%84%e5%bb%ba%e5%b9%b6%e5%ae%89%e8%a3%85nginx%e5%88%b0amazon-linux-2\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e4%bd%bf%e7%94%a8%e6%ba%90%e4%bb%a3%e7%a0%81%e6%9e%84%e5%bb%ba%e5%b9%b6%e5%ae%89%e8%a3%85nginx%e5%88%b0amazon-linux-2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"https:\/\/www.silicloud.com\/zh\/blog\/"},{"@type":"ListItem","position":2,"name":"\u4f7f\u7528\u6e90\u4ee3\u7801\u6784\u5efa\u5e76\u5b89\u88c5Nginx\u5230Amazon Linux 2"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#website","url":"https:\/\/www.silicloud.com\/zh\/blog\/","name":"Blog - Silicon Cloud","description":"","inLanguage":"zh-Hans"},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/6530331a63adef3b3443a1fab53a0e6e","name":"\u97f5, \u79d1","image":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/429ccb39b3fff5188bc17986222cfb0936cbadb8cc933cff04ab5ca01bd30a08?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/429ccb39b3fff5188bc17986222cfb0936cbadb8cc933cff04ab5ca01bd30a08?s=96&d=mm&r=g","caption":"\u97f5, \u79d1"},"url":"https:\/\/www.silicloud.com\/zh\/blog\/author\/yunke\/"},{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e4%bd%bf%e7%94%a8%e6%ba%90%e4%bb%a3%e7%a0%81%e6%9e%84%e5%bb%ba%e5%b9%b6%e5%ae%89%e8%a3%85nginx%e5%88%b0amazon-linux-2\/#local-main-organization-logo","url":"","contentUrl":"","caption":"Blog - Silicon Cloud"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/32961","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/comments?post=32961"}],"version-history":[{"count":2,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/32961\/revisions"}],"predecessor-version":[{"id":93437,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/32961\/revisions\/93437"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/media?parent=32961"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/categories?post=32961"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/tags?post=32961"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}