springboot+ netty整合開發仿照微信客戶段(fastdfs整合nginx)一步到位 ,中間沒有任何報錯

這是這位大佬給排的坑,感謝啊,第一次安裝環境這麼順利,哭了,之前曾經嘗試過安裝fastdfs ,
但是安裝中遇到過的問題,太難了,我放棄了,這次直接在雲服務器上幹,竟然一步到位
https://www.jianshu.com/p/282f6c02d87

服務器環境搭建
1.安裝fastDFS
如果沒有GCC,先安裝GCC
1.檢查依賴包

yum -y install zlib zlib-devel pcre pcre-devel gcc gcc-c++ openssl openssl-devel libevent libevent-devel perl unzip net-tools wget

除了Mariadb,所需要的我都集合在一個文件裏了(64位,均可用),也可以直接通過這個下載,然後用winscp之類的工具上傳

鏈接:https://pan.baidu.com/s/1vCsJvudQqh03cFzoFNQIDA 提取碼:dgpt

注:爲了方便管理,創建一個文件夾專門放所需軟件

mkdir developer
cd developer

1.2 下載安裝包(fastdfs源碼包、libfastcommon源碼包)

wget https://github.com/happyfish100/fastdfs/archive/V5.05.tar.gz
wget https://github.com/happyfish100/libfastcommon/archive/V1.0.7.tar.gz
在/usr/lib64 下查找 libfast* 發現存在文件了,所以安裝成功

image.png
從lib64位環境拷貝到32

image.png
安裝fdfs
下載

wget https://github.com/happyfish100/fastdfs/archive/V5.05.tar.gz

解壓

tar -zxvf V5.05.tar.gz

編譯

cd fastdfs-5.05
./make.sh

安裝

./make.sh install

然後在/usr/lib 和 /etc/fdfs/下都能看到其相關配置

image.png
將剛解壓的fdfs裏面的conf文件,全部複製到/etc/fdfs/下面
image.png
然後進入etc下的/fdfs修改tracker.conf (不是.sample)
將base_path 改成如圖 (用於記錄日誌)

image.png
切換到根目錄,然後遞歸創建剛纔base_path的文件夾

image.png
進入目錄後,再把需要的兩個文件夾也創建

image.png
現在要啓動tracker,先回到 /usr/bin/通過命令啓動

image.png

通過

fdfs_trackerd /etc/fdfs/tracker.conf

啓動, 後面跟的是tracker配置文件的路徑,在這個命令後面restart是重啓

啓動storage
先回到剛纔創建記錄日誌和數據的文件夾目錄,複製文件路徑
image.png
/fastdfs/storage

然後再切到配置文件目錄,同樣修改文件路徑

image.png
若用/查找不到base_path,則先用i進入手動查找

image.png
image.png

需要注意的是group_name=是設置組名, 圖片存在的路徑前綴
修改實際圖片存放的路徑:

image.png
修改tracker_server地址(用內網ip,如果用公網IP需要開放額外端口)

image.png
現在進入/usr/bin/目錄通過命令測試下(直接用命令,不進也可以)

image.png
現在查看下tracker和storage是否配置並啓動成功

image.png
ok,最後再來配置client

配置client
client的配置和前面兩個順序和流程都一樣,不過base_path均統一配置成內網地址

現在來測試上傳一張圖片,因爲沒有配置對外上傳接口,所以通過winscp上傳一張圖片到/root目錄後,再通過client的命令測試上傳,

image.png
然後將返回的值複製,訪問(去掉內網ip)

也可以先用這個命令測試
image.png
注意!用這個命令測試後,直接複製返回的值,加上ip
image.png
上傳圖片成功,但訪問爲404
參考 :https://blog.csdn.net/qq_37495786/article/details/84330699

如圖返回一個連接即說明成功!

image.png
然後進入存儲文件的storage data裏查看

image.png

因爲第一個上傳的文件,所以會被索引分配到00/00 發現文件存在,所以client配置成功,

現在還需要安裝ngxin才能完整使用fdfs

常用命令:修改配置後需要重啓

/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
cd /usr/local/nginx/sbin/
./nginx -s reload
在安裝nginx和fastDFS整合之前,可以前先看遇到的坑我自己遇到的各種問題,花了近乎兩天時間才解決.因爲這塊坑實在太多了…
2.安裝nginx
本次用的1.12版本

服務器用的是騰訊雲,需要注意的是配置安全組和開放端口
如果安裝完後發現無法訪問頁面,可能是防火牆問題,需要添加對應的防火牆規則,或者直接關閉防火牆.

wget -c https://nginx.org/download/nginx-1.10.1.tar.gz
不要用這個鏈接 https://github.com/happyfish100/fastdfs-nginx-module/archive/master.zip 該鏈接在centos7上有問題.這個問題耽誤了我一天的時間
用這個,下載後需要重命名下

這裏爲啥這麼長一串呢,因爲最新版的master與當前nginx有些版本問題
wget https://github.com/happyfish100/fastdfs-nginx-module/archive/5e5f3566bbfa57418b5506aaefbe107a42c9fcb1.zip

感謝這個 大哥 求我狗命
找了一天最後通過這個才解決問題

整合安裝可參考這個https://www.cnblogs.com/chiangchou/p/fastdfs.html
或這個https://www.codetd.com/article/130835

注意,解壓zip的命令是unzip
先配置好fastdfs-nginx
解壓後,進入src目錄下,vim conf文件,將local都刪掉

檢查和安裝依賴(如果之前第一步沒安裝的話)

yum -y install zlib zlib-devel pcre pcre-devel gcc gcc-c++ openssl openssl-devel libevent libevent-devel perl unzip net-tools wget

解壓,安裝ngxin,然後將自定義配置的最後一個改成如圖的路徑(fastdfs-nginx的src路徑)

image.png
將後面的覆蓋既:

./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=/home/package/fastdfs-nginx-module-master/src

請不要給自己找麻煩,用默認配置+手動添加模塊即可!
請不要給自己找麻煩,用默認配置+手動添加模塊即可!
請不要給自己找麻煩,用默認配置+手動添加模塊即可!
解釋:

之所以這個坑花了我一天時間,是因爲一開始錯的我莫名其妙,報的是錯完全就是因爲自定義配置nginx造成的,因爲自定義配置nginx發現居然是可以成功配置的!!!,但是運行的時候會報錯,報錯的,報這個錯
nginx: [emerg] unknown directive “ngx_fastdfs_module” in /usr/local/nginx/conf/nginx.conf:40

然後我就根據這個錯誤,去找了好多解決方法,一直都沒找到.這也是我走了彎路,方向不對了,所以花再多時間也是不可能找到解決方法的

後來自己重新自動用默認編譯ngxin,發現居然報錯了,報的錯是和這個大哥 一樣的,好了,有人了前人的栽樹,最終終於解決了.

將=號後面的鏈接換成改名後解壓的fastdfs-nginx-module的src既可.然後到nginx解壓的目錄下去配置和編譯

添加模塊
./configure --add-module=…/fastdfs-nginx-module-test/src

進入nginx解壓後目錄,將上邊的配置代碼粘貼進去回車配置

image.png

image.png
配置完成後,

make

編譯,稍等

image.png
然後安裝:

make install

image.png
最後檢查下安裝成功

image.png
將fastdfs-nginx的橋樑文件配置拷貝到之前的/etc/fdfs裏 與tracker和storage,client放在一起

image.png
進入/etc/fdfs目錄下

vim mod_fastdfs.conf

修改成如下路徑

image.png
然後分別修改如圖對應的位置,其中tracker_server依然是內網ip

image.png

而組名要與之前的對應,以及是否使用組名改爲true(默認false)

最後也別忘了修改保存路徑:

image.png
退出保存後,到根目錄下的fastdfs創建tmp文件夾

image.png
接下來就是配置nignx的了,找到usr/local下的nginx的目錄,然後打開配置文件,修改

image.png
在配置文件中添加紅色標記塊,其中server_name 用的是公網ip,然後需要還安全組裏打開88端口,是M00,不是MOO
image.png
整合tomca(server 用的內網地址)

image.png
在第二個location裏把root index.html刪除 配上proxy_pass既可

如果無法訪問,請關閉防火牆

3.安裝MariaDB-10.2
根據官方的提示:

先安裝第一個依賴

https://mariadb.com/kb/en/library/mariadb-installation-version-10121-via-rpms-on-centos-7/

1.yum install rsync nmap lsof perl-DBI nc

然後按提示配置:

https://mariadb.com/kb/en/library/yum/

image.png
官方圖中配置是國外鏡像,所以你懂的,需要換成國內源
參考這篇文檔

https://blog.csdn.net/junehappylove/article/details/78690743

然後再配置安裝即可

vim /etc/yum.repos.d/MariaDB.repo

[root@hadoop yum.repos.d]# cat MariaDB.repo

MariaDB 10.2 CentOS repository list - created 2017-12-01 11:36 UTC

http://downloads.mariadb.org/mariadb/repositories/

[mariadb]
name = MariaDB
baseurl = https://mirrors.ustc.edu.cn/mariadb/yum/10.2/centos7-amd64
gpgkey=https://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1
sudo yum install MariaDB-server MariaDB-client

直接命令安裝即可,系統原來自動帶的5.5會被替代!!!

安裝基礎依賴

yum install boost-devel.x86_64

導入key,後面的地址是從剛配置的MariaDB.repo裏的gpgkey裏拿的

rpm --import https://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB

最後啓動下看是否成功:

image.png
ok了

如果沒有能成功運行,則加上這一步
rpm -ivh galera-25.3.23-1.rhe16.e16.x86_64.rpm
大版本相同即可,需要自己去下這個

然後對數據庫進行一些基本的安全設置

mysql_secure_installation

image.png

第一次會輸入密碼,因爲之前沒有設置密碼,所以直接回車即可
之後又會一些雜七雜八的詢問,直接y既可

image.png
之後登錄數據庫,成功後再通過Navicat遠程連接

image.png
先去安全組開發3306端口

image.png
然後再去服務器數據庫裏改下權限

image.png
GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘數據庫密碼’ WITH GRANT OPTION;

刷新更改

flush privileges;

再來測試下:
image.png

注意,Navicat鏈接數據庫的密碼是數據庫的密碼,而不是服務器的密碼
4.安裝tomcat
1.解壓

image.png
2.移動到usr的local目錄下,(一般除了jdk,都不用創建文件夾)

image.png
爲了看起來更和諧一點,對文件夾重新命名下,採用mv命令:

image.png
進入文件後,進入bin目錄運行tomcat

image.png
然後測試下是否啓動成功,打開公網ip,默認端口8080
發現沒有能打開,所以應該是安全組和防火牆的問題了,先修改安全組,可直接添加一個組或者直接添加8080端口,

image.png
再測試下

image.png
---->ok成功了

5.安裝jdk8和配置環境變量
解壓

image.png
tar -zxvf jdk-8u211-linux-x64.tar.gz
解壓成功:

image.png
在usr建立一個java文件夾後移動文件夾

mkdir /usr/java
image.png
進入 /usr/java/jdk1.8.0_211 拷貝路徑
打開文件

vim /etc/profile
移到最末端,添加如下配置

image.png
添加完成後一定要用source命令使文件生效
image.png
通過java命令能看到版本號說明安裝和配置都成功了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章