linux下fastDFS圖片服務器安裝詳情


項目整體環境搭建
    1.安裝gcc環境(編譯c環境)
        yum install gcc-c++
    2.安裝libebvent環境(fastdfs環境)
        yum -y install libevent
    3.安裝perl環境(編譯c文件環境)
        ./
    4.安裝libfastcommon環境(fastdfs環境)
        將提供的壓縮包全部上傳,首先解壓libfastcommonV1.0.7.tar
        tar -zxvf libfastcommonV1.0.7.tar.gz
        cd libfastcommon-1.0.7/
        ./make.sh
        ./make.sh install
        ibfastcommon安裝好后會自動將庫文件拷貝至/usr/lib64下,由於FastDFS程序引用usr/lib目錄所以需要將/usr/lib64下的庫文件拷貝至/usr/lib下
        cp /usr/lib64/libfastcommon.so /usr/lib
tracker編譯安裝
    1.解壓FastDFS
        tar -zxf FastDFS_v5.05.tar.gz
    2.編譯FastDFS
        cd FastDFS
        ./make.sh
        ./make.sh install
    3.安裝成功后,將FastDFS下的conf文件下的所有文件復制到/etc/fdfs/下
        cp -r conf/* /etc/fdfs/
    4.配置tracker
        cd /etc/fdfs/
        vi tracker.conf
        將base_path=/home/yuqing/FastDFS改為base_path=/home/fastdfs(可以通過命令符去查找,命令符:/base_path)
        保存退出
    5.創建fastdfs目錄
        mkdir /home/fastdfs
    6.啟動tracker
        /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart(可能需要兩遍,不清楚原因)
    7.設置開機自啟
        vi /etc/rc.d/rc.local
        將命令添加到文件里面:/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
    
storage編譯安裝(由於單機安裝,所以省略編譯和環境安裝,如果存儲文件的跟客戶端不在同一台機器則需要按照安裝tracker一樣的環境步驟安裝)
    1.配置storage
        cd /etc/fdfs/
        vi storage.conf
        修改以下配置
            group_name=group1
            base_path=/home/yuqing/FastDFS改為:base_path=/home/fastdfs
            store_path0=/home/yuqing/FastDFS改為:store_path0=/home/fastdfs/fdfs_storage
            #如果有多個掛載磁盤則定義多個store_path,如下
            #store_path1=.....
            #store_path2=......
            tracker_server=192.168.101.3:22122   #配置tracker服務器:IP
            #如果有多個則配置多個tracker
            tracker_server=192.168.101.4:22122
    2.創建數據存儲目錄
        mkdir /home/fastdfs/fdfs_storage
    3.啟動storage
        /usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart(可能需要兩遍,不清楚原因)
    4.設置開機自啟
        vi /etc/rc.d/rc.local
        將命令添加到文件里面:/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
整體完成,可以通過內部上傳測試,看返回結果
    1.修改上傳客戶端配置
        vi /etc/fdfs/client.conf
        修改以下配置
            base_path=/home/fastdfs
            tracker_server=你的ip:22122
    2.上傳命令
        命令使用格式:
        /usr/bin/fdfs_test 客戶端配置文件地址  upload  上傳文件
        如:/usr/bin/fdfs_test /etc/fdfs/client.conf upload /root/FastDFS/conf/anti-steal.jpg
由於沒有和nginx整合,所以無法使用http下載,也無法查看

配置fastdfs-nginx-module
    1.解壓fastdfs-nginx-module
        tar -zxf fastdfs-nginx-module_v1.16.tar.gz
    2.配置fastdfs-nginx-module
        cd fastdfs-nginx-module/src
        vi config
        將文件中的/usr/local/路徑改為/usr/(兩個都改)
        將mod_fastdfs.conf復制到/etc/fdfs/下
            cp mod_fastdfs.conf /etc/fdfs/
        修改etc/fdfs/下的mod_fastdfs.conf
            vi mod_fastdfs.conf
            修改mod_FastDFS.conf的以下內容:
            base_path=/home/fastdfs
            tracker_server=你的ip:22122
            #tracker_server=你的ip:22122(多個tracker配置多行)
            url_have_group_name=true        #url中包含group名稱
            store_path0=/home/fastdfs/fdfs_storage   #指定文件存儲路徑
        將libfdfsclient.so拷貝至/usr/lib下
        cp /usr/lib64/libfdfsclient.so /usr/lib/
        
創建nginx/client目錄
    mkdir -p /var/temp/nginx/client
nginx整合
    storage上安裝nginx
        1.解壓nginx
            tar -zxf nginx-1.8.0.tar.gz
        2.安裝nginx環境
            gcc環境(編譯環境,上面已經安裝):yum install gcc-c++
            pcre環境(perl庫,nginx的http模塊使用pcre來解析正則表達式):yum install -y pcre pcre-devel
            zlib環境(提供多種壓縮和解壓縮的方式,nginx使用zlib對http包的內容進行gzip):yum install -y zlib zlib-devel
            openssl環境(算法和安全,https使用):yum install -y openssl openssl-devel
        3.編譯nginx
            cd /root/nginx-1.8.1
            ./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(fastdfs專有)
            make
            make install
        4.創建編譯鏈接
            ln -s /usr/include/fast* /usr/local/include/
            原因:編譯安裝nginx的fastdfs插件的頭文件沒有找到,由於編譯nginx時候系統會到/usr/local/include,而編譯安裝fastdfs-nginx-module時則默認保存在了/usr/include目錄。
            修復:ln -s /usr/include/fast* /usr/local/include/
        5.修改nginx配置
            編譯完成后,會自動將nginx安裝到/usr/local/nginx
            cd /usr/local/nginx/conf
            vi nginx.conf
            添加一個server
                server {
                    listen       80;
                    server_name  本機;

                    location /group1/M00/ {
                       ngx_fastdfs_module;
                    }
                    error_page   500 502 503 504  /50x.html;
                    location = /50x.html {
                        root   html;
                    }
                }
            配置說明:
                說明:
                    server_name指定本機ip
                    location /group1/M00/:group1為nginx 服務FastDFS的分組名稱,M00是FastDFS自動生成編號,對應store_path0=/home/FastDFS/fdfs_storage,如果FastDFS定義store_path1,這里就是M01
            
        
        進入到 cd /usr/local/nginx/sbin
        6.啟動nginx
            cd /usr/local/nginx/sbin/
            ./nginx
        7.查看進程: ps aux|grep nginx
        8.關閉nginx
        ./nginx -s stop
        9.刷新配置
         ./nginx -s reload
            

說明:
    如果重啟服務器會發現無法啟動nginx,報錯找不到某個文件
    解決:mkdir /var/run/nginx(偷懶方法,不治本,下次重啟依然會報錯)
    然后再運行nginx
           


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM