在VPS上快速部署Whmcs+Vesta售賣PHP虛擬主機
前些日子,收到了一臺Linode日本東京的伺服器。雖説是最低配置,但是對我的服務來説還是綽綽有餘。
於是便考慮在上面搭建虛擬主機分銷
我用過兩個面板,一個是DirectAdmin,還有一個是Vesta。個人比較喜歡Vesta,而且它是免費的。
我的嘗試過程
第一次嘗試
一開始,我直接使用lnmp.org提供的一鍵安裝包安裝了LNMPA,順便安裝了ionCube。
問題便出現了。
我安裝的是PHP5.6 + MySQL5.6 。或許是版本太高的原因,MySQL默認開啓了嚴格模式。之後報錯
My SQL Error 1048 column description cannot be null
Incorrect integer value: ” for column ‘id’ at row 1
Field ‘xyz’ doesn’t have a default value
參考了 https://www.webhostingdiscussion.net/blog/mysql/disable-mysql-strict-mode.htm 提供的解決方案,發現并不能成功。直接使用lnmp一鍵安裝包的更換MySQL版本,但是由於MySQL進程沒有清理乾净也失敗了。
遂重裝系統
第二次嘗試
第二次我直接安裝MySQL5.5.44 。問題解決。
lnmp自帶ionCube擴展的快速安裝方法,一切進展順利。
whmcs配置完成之後,開始安裝Vesta。安裝過程也是一切正常,但是在安裝完成之後,發現Nginx服務無法重新啓動。
檢查了一下,發現Vesta的Nginx似乎是自己獨有的,與服務器現存的Nginx不能兼容。無奈,卸載了Vesta和lnmp一鍵安裝包。
第三次嘗試
這次我直接安裝Vesta。因爲Vesta的安裝脚本自帶了運行服務器所需要的所有軟件,甚至還自帶iptables和Fail2ban
幾分鐘后安裝完成,安裝了ionCube,在後臺開虛擬主機跑whmcs,配置數據庫+插件+前後端對接。整個過程完成,耗時大約20分鐘。
如何快速部署?
Step 1 install Vesta
支持的系統:
# Supported Operating Systems:
# RHEL / CentOS 5,6,7
# Debian 6,7,8
# Ubuntu 12.04-15.10
安裝:
# Download installation script
curl -O http://vestacp.com/pub/vst-install.sh
# Run it
bash vst-install.sh
進行一番配置,安裝過程非常快。配置稍差的主機大概衹需要20分鐘。
Step 2 install ionCube
前往 http://www.ioncube.com/loaders.php 查看支持的系統和對應的包
我是CentOS7,所以:
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
tar zxf ioncube_loaders_lin_x86-64.tar.gz
mv ioncube /usr/local
#修改PHP配置文件
vi /etc/php.ini
在[Zend]之前加入(我直接加在文件頭部)
zend_extension = /usr/local/ioncube/ioncube_loader_lin_5.4.so
zend_extension_ts = /usr/local/ioncube/ioncube_loader_lin_5.4_ts.so
之後
#重啓Apache
service httpd restart
#查看是否安裝成功
php -v
Step 3 install & setup whmcs
請支持正版
Step 4 connect whmcs & vesta
Vesta
在Vesta面板中,添加package(包)對應各套餐
注意httpd和nginx選擇『hosting』
whmcs
#進入whmcs根目錄
cd /home/admin/web/public_html/modules/servers
mkdir vesta
cd vesta
#下載插件
wget http://c.vestacp.com/0.9.8/rhel/whmcs-module.php -O vesta.php
之後進入whmcs的後台,添加服務器。模板選擇Vesta,填入自己的Vesta登錄信息即可。
參考資料
Vesta官網 : http://vestacp.com
freehao123 : http://www.freehao123.com/vestacp-whmcs/