Nginx+Fastdfs搭建圖片服務器

1.環境和工具

  • linux虛擬機爲CentOS-6.5
  • Xshell遠程連接工具
  • nginx-1.8.0.tar.gz
  • FastDFSV5.05.tar.gz
  • fastdfs-nginx-module_v1.16.tar.gz
  • libfastcommon-1.0.7.tar.gz

2.工具下載

3.使用Xshell 連接虛擬機上傳相關包到虛擬機

  • 使用Xhell創建一個新的會話,名稱任意(建議也寫ip地址)、協議選擇ssh、主機爲你虛擬機的ip地址、點擊確定
    這裏寫圖片描述
  • 在Linux主機上,安裝上傳下載工具包rz及sz
    如果不知道你要安裝包的具體名稱,可以使用yum provides */name 進行查找系統自帶軟件包的信息;
    [root@localhost src]# yum provides */rz
    lrzsz-0.12.20-27.1.el6.i686 : The lrz and lsz modem communications programs
    Repo : base
    Filename : /usr/bin/rz
    一般會列出軟件包的名稱及版本,還有安裝路徑;查詢到軟件包名後,使用yum install -y 包名 進行安裝。
    lrzsz包安裝完成後包括上傳rz、下載sz命令;只需要安裝這個包即可。
    [root@localhost src]# yum install -y lrzsz
  • 使用Xshell上傳Nginx+fastDFS相關包到虛擬機

4.相關依賴包的下載

  • gcc 安裝nginx需要先將官網下載的源碼進行編譯,編譯依賴gcc環境,如果沒有gcc環境,需要安裝gcc:yum install gcc-c++
  • PCRE PCRE(Perl Compatible Regular Expressions)是一個Perl庫,包括 perl 兼容的正則表達式庫。nginx的http模塊使用pcre來解析正則表達式,所以需要在linux上安裝pcre庫。
    yum install -y pcre pcre-devel
  • zlib zlib庫提供了很多種壓縮和解壓縮的方式,nginx使用zlib對http包的內容進行gzip,所以需要在linux上安裝zlib庫。
    yum install -y zlib zlib-devel
  • openssl OpenSSL 是一個強大的安全套接字層密碼庫,囊括主要的密碼算法、常用的密鑰和證書封裝管理功能及SSL協議,並提供豐富的應用程序供測試或其它目的使用。
    nginx不僅支持http協議,還支持https(即在ssl協議上傳輸http),所以需要在linux安裝openssl庫。
    yum install -y openssl openssl-devel
  • 安裝FastDFS之前,先安裝libevent工具包。
    yum -y install libevent

5.搭建步驟

  • 安裝libfastcommonV1.0.7工具包。
    《1》解壓縮tar -zxf libfastcommonV1.0.7.tar.gz
    《2》yum -y install perl
    《3》./make.sh
    《4》./make.sh install
    《5》把/usr/lib64/libfastcommon.so文件向/usr/lib/下複製一份(我裝的是32位 的虛擬機)
  • 安裝Tracker服務
    《1》解壓縮
    《2》./make.sh
    《3》./make.sh install 安裝後在/usr/bin/目錄下有以fdfs開頭的文件都是編譯出來的。配置文件都放到/etc/fdfs文件夾
    《4》把/root/FastDFS/conf目錄下的所有的配置文件都複製到/etc/fdfs下。
    《5》配置tracker服務。修改/etc/fdfs/tracker.conf文件。
    這裏寫圖片描述
    《6》啓動tracker。/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
    重啓使用命令:/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
  • 安裝storage服務。
    《1》如果是在不同的服務器安裝,上一步的1~4需要重新執行。
    《2》配置storage服務。修改/etc/fdfs/storage.conf文件。
    這裏寫圖片描述
    《3》啓動storage服務。/usr/bin/fdfs_storaged /etc/fdfs/storage.conf
    重啓使用命令: /usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
  • 測試服務
    《1》修改配置文件/etc/fdfs/client.conf
    這裏寫圖片描述
    《2》測試 /usr/bin/fdfs_test /etc/fdfs/client.conf upload anti-steal.jpg
    圖片路徑:/etc/fdfs/
  • 搭建nginx提供http服務。
    《1》解壓插件壓縮包: fastdfs-nginx-module_v1.16.tar.gz
    《2》修改/root/fastdfs-nginx-module/src/config文件,把其中的local去掉。
    這裏寫圖片描述
    《3》進入nginx的文件夾 對nginx重新config
    ./configure \
    –prefix=/usr/local/nginx \
    –pid-path=/var/run/nginx/nginx.pid \
    –lock-path=/var/lock/nginx.lock \
    –error-log-path=/var/log/nginx/error.log \
    –http-log-path=/var/log/nginx/access.log \
    –with-http_gzip_static_module \
    –http-client-body-temp-path=/var/temp/nginx/client \
    –http-proxy-temp-path=/var/temp/nginx/proxy \
    –http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
    –http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
    –http-scgi-temp-path=/var/temp/nginx/scgi \
    –add-module=/root/fastdfs-nginx-module/src
    注意:上邊將臨時文件目錄指定爲/var/temp/nginx,需要在/var下創建temp及nginx目錄
    《4》 make
    《5》 make install
    《6》把/root/fastdfs-nginx-module/src/mod_fastdfs.conf文件複製到/etc/fdfs目錄下。編輯:
    這裏寫圖片描述
    《7》nginx的配置,在nginx的配置文件中添加一個Server:cd /usr/local/nginx/config/
server {
        listen       80;
        server_name  192.168.101.3;

        location /group1/M00/{
                #root /home/FastDFS/fdfs_storage/data;
                ngx_fastdfs_module;
        }
}

《8》將libfdfsclient.so拷貝至/usr/lib下:cp /usr/lib64/libfdfsclient.so /usr/lib/
《9》/usr/local/nginx目錄下啓動nginx sbin/nginx
停止nginx sbin/nginx -s stop

6.若Nginx啓動後,瀏覽器輸入ip無法訪問

  • 第一步:先檢查網絡,win機ping linux機,通了進行下一步
  • 第二步:檢查端口,netstat -antl | grep 你開啓的服務端口,比如你開了http,那就是80端口或者你自定義的端口。
  • 第三步:檢查防火牆,service iptables stop 可以直接先關掉防火牆看是不是能訪問了,如果可以,說明是防火牆屏蔽掉了。
    chkconfig iptables off (將防火牆永久關閉)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章