三火 發表於 2019-6-21 10:58:00

Nginx 前后端分离, 多个二级域名配置

<p>在安装Nginx之后</p>
<p>/etc/nginx/nginx.conf 里面有一段</p>
<p>include /etc/nginx/conf.d/*.conf;&nbsp; 通常我们配置二级域名放在这里面</p>
<p>&nbsp;</p>
<p>先来看一级域名配置</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 0, 1)">http {<br></span></pre>
<p>  log_format main '$remote_addr - $remote_user [$time_local] "$request" '<br>                        '$status $body_bytes_sent "$http_referer" '<br>                        '"$http_user_agent" "$http_x_forwarded_for"';</p>
<pre></pre>
<p>  access_log /var/log/nginx/access.log main;</p>
<pre></pre>
<p>   sendfile on;<br>      tcp_nopush          on;<br>      tcp_nodelay         on;<br>      keepalive_timeout   65;<br>      types_hash_max_size 2048;</p>
<pre></pre>
<p>   include /etc/nginx/mime.types;<br>      default_type      application/octet-stream;</p>
<p>&nbsp;</p>
<p>      include /etc/nginx/conf.d/*.conf; #通常我们配置二级域名放在这里面</p>
<pre><span style="color: rgba(0, 0, 0, 1)"><br>server {
      server_namewww.XXX.com;
      root         </span>/opt/<span style="color: rgba(0, 0, 0, 1)">dist;    //VUE打包后的目录</span><span style="color: rgba(0, 0, 0, 1)">

      #access_loglogs</span>/<span style="color: rgba(0, 0, 0, 1)">host.access.logmain;

      location </span>/<span style="color: rgba(0, 0, 0, 1)"> {</span><span style="color: rgba(0, 0, 0, 1)">
            indexindex.html index.htm;
      }</span><span style="color: rgba(0, 0, 0, 1)">
      error_page   </span><span style="color: rgba(128, 0, 128, 1)">500</span> <span style="color: rgba(128, 0, 128, 1)">502</span> <span style="color: rgba(128, 0, 128, 1)">503</span> <span style="color: rgba(128, 0, 128, 1)">504</span>/<span style="color: rgba(0, 0, 0, 1)">50x.html;
      location </span>= /<span style="color: rgba(0, 0, 0, 1)">50x.html {
            root   html;
      }<br>     # 如下SSL配置<br></span></pre>
<p>     &nbsp;&nbsp;listen 443 ssl; # managed by Certbot<br>          ssl_certificate /etc/letsencrypt/live/api.yunpiaobox.com/fullchain.pem; # managed by Certbot<br>          ssl_certificate_key /etc/letsencrypt/live/api.yunpiaobox.com/privkey.pem; # managed by Certbot<br>          include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot<br>          ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot</p>
<p>&nbsp; }</p>
<p>&nbsp;&nbsp;</p>
<p>&nbsp; server {<br>        if ($host = www.yunpiaobox.com) {<br>            return 301 https://$host$request_uri;<br>        } # managed by Certbot</p>
<p><br>          listen       80;<br>          server_namewww.yunpiaobox.com;<br>        return 404; # managed by Certbot</p>
<p>  }</p>
<p>}</p>


</div>
<p>&nbsp;</p>
<p>到此结束</p>
<p>再来看二级域名. 如下是静态文件(HTTPS)访问配置</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 0, 1)">server {
      server_name<span style="color: rgba(255, 0, 0, 1)">img.XXX.com;</span>

      location </span>/<span style="color: rgba(0, 0, 0, 1)"> {
            alias</span>/img/<span style="color: rgba(0, 0, 0, 1)">;
            #autoindex on;
      }


    listen </span><span style="color: rgba(128, 0, 128, 1)">443</span><span style="color: rgba(0, 0, 0, 1)"> ssl; # managed by Certbot
    ssl_certificate </span>/etc/letsencrypt/live/api.yunpiaobox.com/<span style="color: rgba(0, 0, 0, 1)">fullchain.pem; # managed by Certbot
    ssl_certificate_key </span>/etc/letsencrypt/live/api.yunpiaobox.com/<span style="color: rgba(0, 0, 0, 1)">privkey.pem; # managed by Certbot
    include </span>/etc/letsencrypt/options-ssl-<span style="color: rgba(0, 0, 0, 1)">nginx.conf; # managed by Certbot
    ssl_dhparam </span>/etc/letsencrypt/ssl-<span style="color: rgba(0, 0, 0, 1)">dhparams.pem; # managed by Certbot

}

server {
    </span><span style="color: rgba(0, 0, 255, 1)">if</span> ($host =<span style="color: rgba(0, 0, 0, 1)"> img.yunpiaobox.com) {
      </span><span style="color: rgba(0, 0, 255, 1)">return</span> <span style="color: rgba(128, 0, 128, 1)">301</span> https:<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">$host$request_uri;</span>
<span style="color: rgba(0, 0, 0, 1)">    } # managed by Certbot


    listen       </span><span style="color: rgba(128, 0, 128, 1)">80</span><span style="color: rgba(0, 0, 0, 1)">;
    server_name<span style="color: rgba(255, 0, 0, 1)">img.XXX.com;
    </span></span><span style="color: rgba(0, 0, 255, 1)">return</span> <span style="color: rgba(128, 0, 128, 1)">404</span><span style="color: rgba(0, 0, 0, 1)">; # managed by Certbot
}</span></pre>
</div>
<p>&nbsp;</p>
<p>二级域名. 如下是端口映射访问配置 请求could.XXX.com 将会请求8080端口的服务</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 0, 1)">server {
    listen </span><span style="color: rgba(128, 0, 128, 1)">80</span><span style="color: rgba(0, 0, 0, 1)">;
    server_name cloud.XXX.com;

    location </span>/<span style="color: rgba(0, 0, 0, 1)"> {
      proxy_set_header   X</span>-Real-<span style="color: rgba(0, 0, 0, 1)">IP $remote_addr;
      proxy_set_header   Host      $http_host;
      proxy_pass         http:</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">0.0.0.0:8080;</span>
<span style="color: rgba(0, 0, 0, 1)">    }<br>  <br>   access_log /var/log/nginx/cloud.XXX.com.log;</span></pre>
<pre><span style="color: rgba(0, 0, 0, 1)">}</span></pre>
</div>
<p>&nbsp;</p><br><br>
来源:https://www.cnblogs.com/eason-d/p/11063383.html
頁: [1]
查看完整版本: Nginx 前后端分离, 多个二级域名配置