前言
成長型公司,最近需要項目管理的軟件,所以在windows的服務器上搭建了redmine,其中也遇到了兩個坑,現記錄下來。
Redmine是用Ruby開發的基于web的項目管理軟件,是用ROR框架開發的一套跨平臺項目管理系統。并且支持多數據庫,其實此類軟件在linux下搭建更好,windows上坑會略多。
安裝流程
先簡單描述下安裝流程。其實說白了redmine就是一個管理系統,也就是網站,在有相應的環境之下,只要部署到服務器上即可。
安裝ruby和rails環境。
選擇一個數據庫,可以是mysql、sql server、PostgreSQL等。
cmd配置,運行server就可以了。
首先需要安裝ruby和數據庫,這邊就不詳細說了,需要注意版本號和系統的架構。詳細的安裝流程可以看官方安裝文檔,寫的已經非常詳細,基本沒什么大的坑。
此處安裝的版本
安裝過程中遇到的error
數據庫驅動加載失敗。
failed to load libmysql.dll from
大致的錯誤如上圖顯示。這個錯誤是mysql的驅動和ruby的gem不匹配導致的。ruby的mysql2的gem包需要C的connector的。
在執行到bundle install --without development test rmagick
這一步時,自動安裝的mysql2 gem包不可用,從而在執行bundle exec rake generate_secret_token
時,出現上述錯誤。所以我們需要刪除原來的mysql2的gem包,重新安裝。步驟如下:
刪除原有的gem包,可能會有多個,選擇全部刪除
gem uninstall mysql2
下載mysql的Connector/C,地址如下。下載的時候選擇zip包,注意,驅動的版本需要和ruby的版本一致,博主安裝的是rubyInstaller,所以是32位的ruby,故下載的驅動也為32位的。同時,現在驅動的版本有兩個,6.1.1和6.0.2。請下載6.0.2。下載完成后,解壓到本地。
手動安裝gem包,lib和include的路徑為,解壓后的路徑。
gem install mysql2 --platform=ruby -- '--with-mysql-lib="D:/mysql-connector-c-6.1.11-win32/lib" --with-mysql-include="D:/mysql-connector-c-6.1.11-win32/include"'
再執行bundle exec rake generate_secret_token
,沒有錯誤,ok。
SSL驗證失敗
SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed OpenSSL::SSL::SSLError)
這個是ssl的證書問題,導致無法下載gem包,解決方案如下:
下載ssl證書http://curl.haxx.se/ca/cacert.pem到本地。
cmd中添加環境變量set SSL_CERT_FILE=pem
文件路徑。
參考文獻
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。
新聞熱點
疑難解答