標籤:style class blog http tar com
背景:
由於訪問國外網站資源, 有時特別慢. 偶爾一次下載, 肯定還能忍受, 對於多次使用或者小團隊內部使用, 搭建一個鏡像網站, 無疑是個明智的決定.
這邊以搭建CDH5的yum源鏡像, 作為例子, 具體闡述如何藉助apache2搭建一個目錄鏡像服務, 以及如何複製網站資源.
1) 搭建apache2伺服器
*) 安裝apache2
yum install httpd
yum info httpd
*) 確認配置項
/etc/httpd/conf/httpd.conf
DocumentRoot "/var/www/html"
該配置項, 即為apache2預設的根目錄
對應的DocumentRoot的目錄結構如下所示:
*) 服務開啟
service httpd status
service httpd start
*) 服務驗證
netstat -nlp | grep -E ":80\s"
瀏覽器訪問
2) 建立訪問目錄
兩種方式:
1). 在DocumentRoot下, 建立檔案/軟連結來實現
這邊以建立軟連結為例:
mkdir -p ~/resource
touch ~/resource/hive.txt ~/resource/hbase.txt
ln -s ~/resource /var/www/html/resource
訪問 http://172.16.1.106/resource
2). 構建新的Directory標籤
*) 編輯/etc/httpd/conf/httpd.conf
Alias /repo "/var/www/repo" <Directory "/var/www/repo"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order allow,deny Allow from all</Directory>
使用Alias命令, 使得Directory:/var/www/repo和url中/repo對應
Indexes: 允許以目錄結構展示, FollowSymLinks: 允許在該目錄中使用軟連結
要使url展現目錄結構, 需要避免該目錄下有index.html, 否則將展現該index.html的內容, 這個取決於定義
DirectoryIndex index.html index.html.var
*) 建構相關目錄和檔案
mkdir -p /var/www/repo
touch /var/www/repo/repo.txt
*) 訪問驗證
訪問 http://172.16.1.106/repo
3).複製網站
*) 遞迴下載網站資源
http://archive-primary.cloudera.com/cm5/redhat/5/x86_64/cm/5.0.1/
http://archive-primary.cloudera.com/cdh5/redhat/5/x86_64/cdh/5.0.1/
cd ~/resource
wget -c -r -np http://archive-primary.cloudera.com/cm5/redhat/5/x86_64/cm/5.0.1/
wget -c -r -np http://archive-primary.cloudera.com/cdh5/redhat/5/x86_64/cdh/5.0.1/
*) 安裝createrepo
yum install createrepo
*) 重建repodata
createrepo ~/resource/archive-primary.cloudera.com/cm5/redhat/5/x86_64/cm/5.0.1/
createrepo ~/resource/archive-primary.cloudera.com/cdh5/redhat/5/x86_64/cdh/5.0.1/
*) 建立軟連結
ln -s ~/resource/archive-primary.cloudera.com/cm5/redhat/5/x86_64/cm/5.0.1/ /var/www/repo/cm5
ln -s ~/resource/archive-primary.cloudera.com/cdh5/redhat/5/x86_64/cdh/5.0.1/ /var/www/repo/cdh5
*) 驗證
參考資料:
apache2配置詳解
http://liudaoru.iteye.com/blog/336338
http://jingyan.baidu.com/article/9158e0006581d1a2541228b5.html