您好,登錄后才能下訂單哦!
怎么在CentOS7系統中搭建一個CDN,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
CDN基礎實驗2----基于nginx+squid實現緩存功能
1、搭建兩個web服務,使用nginx實現。
一個做源站(然后域名為:www.cdntest.com),配置實現功能:提供可以訪問的web服務;
另一個做反向代理,接收用戶的請求,配置實現功能是:代理到后端的squid。
2、搭建一個squid服務,配置實現如下功能:
1)txt緩存1個月,jpg文件不緩存
2)配置回源功能,源站為后端的web服務器(nginx)
詳細架構如下
圖 1
圖 2
centos7 軟件源設置
備份原來的.repo文件
[root@localhost ~]# mkdir /etc/yum.repos.d/bacakup
[root@localhost~]# mv /etc/yum.repos.d/* /etc/yum.repos.d/bacakup
下載阿里的yum源
[root@localhost~]# wget -O /etc/yum.repos.d/Centos-7.repo http://mirrors.aliyun.com/repo/Centos-7.repo
[root@localhost~]# wget -O /etc/yum.repos.d/epel-7.repo http://mirrors.aliyun.com/repo/epel-7.repo
清除和新建元數據緩存
[root@localhost~]# yum clean all
[root@localhost~]# yum makecache
Nginx-Proxy 虛擬機配置
安裝nginx
[root@proxy ~]# yum install -y nginx
配置/etc/nginx/nginx.conf 其它默認 (centos6.x的系統是編輯/etc/nginx/conf.d/defualt.conf)
[root@proxy ~]# vim /etc/nginx/nginx.conf
server {
listen 80 default_server; #這端口80,默認的就行,可以按照實際需求更改
server_name www.cdntest.com; #這個可以自定義
location / {
proxy_pass http://192.168.56.5; #填寫squid服務器的IP
}
}
激活和啟動nginx服務
[root@proxy ~]# systemctl enable nginx.service
[root@proxy ~]# systemctl start nginx.service
Squid緩存服務器配置
安裝squid
[root@squid ~]# yum install squid
配置/etc/squid/squid.conf,其它保存為默認
[root@squid ~]# vim /etc/squid/squid.conf
acl url_image url_regex -i ^http://.*\.jpg$
no_cache deny url_image
http_access allow deny#在實驗中可以允許所有(deny改成allow),實際生產環境可以視情況來配置
http_port 192.168.56.5:80 accel vhost #配置squid本地網卡和80端口,如果是雙網卡,可以選擇用來訪問源服務器的那一張
cache_peer 192.168.56.4 parent 80 0 originserver #這個是反向代理的源服務器
cache_dir ufs /var/spool/squid 100 16 256 #緩存目錄
cache_log /var/log/squid/cache.log #緩存日志
refresh_pattern -i \.txt$ 43200 100% 43200 #緩存規則,txt文件保存一個月
激活和啟動squid服務
[root@squid ~]# systemctl enable squid.service
[root@squid ~]# systemctl start squid.service
Nginx-Web服務器配置
安裝nginx同上。
配置/etc/nginx/nginx.conf
[root@server ~]# vim /etc/nginx/nginx.conf
server {
server_name www.cdntest.com; #配置域名,其它的保持默認即可
}
激活和啟動服務同上。
注:為了達到實驗要求,自己的nginx-web服務器上必須放有.txt文件和.jpg文件。
編輯windows上的C:\Windows\System32\drivers\etc\hosts文件
添加如下兩行
192.168.56.3 www.cdntest.com
192.168.56.3 cdntest.com #這能使windows上的瀏覽器通過這個域名能直接訪問
Nginx-Proxy這臺反向代理服務器
在瀏覽器中輸入www.cdntest.com或cdntest.com,訪問結果如下
圖 3
驗證緩存是否成功
在nginx-proxy服務器下執行
[root@proxy ~]# curl -I http://192.168.56.5/txt/5.txt #查看txt緩存(圖4)
[root@proxy ~]# curl -I http://192.168.56.5/images/work-1.jpg #查看圖片緩存(圖5)
返回結果
圖 4
圖 5
關于怎么在CentOS7系統中搭建一個CDN問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。