Linux下使用Nginx做CDN伺服器下的配置

宵雲科技發表於2019-12-05

由於使用docker配置Nginx比較方便,所以博主就使用docker做為容器配置下

第一步、配置docker-compose.yml檔案

version: ‘3 services:
        nginx:
                restart: always
                image: nginx
                container_name: nginx-1 ports: - 80:80 volumes: - /usr/local/application/nginx/conf/nginx.conf:/etc/nginx/nginx.conf - /usr/local/application/nginx/logs/:/var/log/nginx/
                        - /usr/local/application/nginx/data/:/var/share/nginx/html/
                        - /usr/local/application/nginx/cdn/:/usr/share/nginx/html/

說明下上面的程式碼的幾個重要部分

首先就是volumes這個節點的值:
  第一個 配置檔案的對映   前面是宿主機  後面是容器
  第二個 日誌對映
  第三個 資料檔案對映
  第四個 cdn的對映

第二步、配置nginx.conf檔案

  nginx.fonf

user nginx;
worker_processes 1;
 
events {
    worker_connections 1024;
}
 
http {
    include       mime.types;
    default_type  application/octet-stream;
    keepalive_timeout 65;
    server {
        listen 80;
        server_name 192.168.157.128;
        location / {
            root /usr/share/nginx/html;
            index  index.html index.htm;
            add_header ‘Access-Control-Allow-Origin‘ ‘*‘; 
            add_header ‘Access-Control-Allow-Credentials‘ ‘true‘;
            add_header ‘Access-Control-Allow-Methods‘ ‘GET, PUT, POST, DELETE, OPTIONS‘;
        }
        location ~* \.(eot|ttf|woff|woff2|svg|otf)$ {
            add_header Access-Control-Allow-Origin *;
            root /usr/share/nginx/html;
        }
    }
}

說明下上面部分程式碼的含義

第一個地方:root這個的值表示的是容器內的值,因為是對映為容器的conf檔案。
第二個地方:三個add_header
  第一個表示的是允許訪問的域,*表示統配,為了安全推薦自定義的域名
  第二個表示的是是否帶Cookie
  第三個表示的是允許的請求方式,GET和OPTIONS必須投
第三方地方:include和default_type這兩個的值表示的是設定請求的Content—Type的內容,如果不設定的話,在html裡面使用CDN的css檔案和js檔案會在瀏覽器中報錯,不理解的COntent-Type型別。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69948194/viewspace-2667009/,如需轉載,請註明出處,否則將追究法律責任。

相關文章