您准备好开始自己的网络托管业务了吗?如果您的答案是肯定的,那么您会发现本教程很有用!在本文中,我们将教您如何在阿里云上为您的企业设置自己的共享网络托管服务。
我们需要三个弹性计算服务(ECS)实例,一个云数据库RDS MySQL实例,以及两个域名。我将使用该域名作为我的主域名和辅助域名。sarathy.info
sarathy.site
下图左侧显示的两个ECS实例将托管我们的主网站。一个 ECS 实例用于部署 WHMCS,另一个用于部署 WordPress。WordPress和WHMCS都需要MySQL。因此,我们还将部署一个云数据库 RDS 版实例。
下图右侧显示的ECS实例将用于托管我们客户的站点。我们将使用一个非常流行的软件自动化一切,称为WHM(虚拟主机管理器)。
架构图
主域的 DNS 配置
记录类型 | 主机 | 价值 |
一个 | @ | ECS 实例的 IP(运行 WordPress) |
一个 | 万维网 | ECS 实例的 IP(运行 WordPress) |
一个 | 门户 | ECS 实例的 IP(运行 WHMCS) |
辅助域的 DNS 配置
记录类型 | 主机 | 价值 |
断续器 | ns1 | ECS 实例的 IP(运行 WHM) |
断续器 | ns2 | ECS 实例的 IP(运行 WHM) |
首先,您需要从他们的官方网站下载WHMCS
接下来,我们必须通过SCP(安全复制)协议将下载的文件复制到我们的服务器。
scp -i path-to-ssh-key.pem path-to-whmccs.zip root@instance-ip:/root
现在,WHMCS 安装文件将被复制到我们服务器的根用户主目录(/root)中。
让我们登录我们的 ECS 实例来安装 WHMCS
ssh -i path-to-ssh-key.pem root@ecs-instance-ip
您将登录到 ECS 实例,如下所示
验证我们是否已将 WHMCS 安装文件成功传输到我们的 ECS 实例中。
ls /root
如果您获得以下输出,则已准备就绪!
更新系统
apt update
升级系统
apt full-upgrade -y
删除不必要的软件包
apt auoremove -y
安装所需的组件
apt install unzip sendmail software-properties-common wget -y
安装 Apache Web 服务器
apt install apache2 -y
通过在 Web 浏览器中访问 ECS 实例的 IP 地址来验证 Apache 服务器的安装
在启动期间启动 Apache
systemctl enable apache2
安装 PHP
apt install php-fpm -y
安装 WHMCS 所需的 PHP 扩展
apt install php-curl php-gd php-json php-mbstring php-imap php-iconv php-dev php-mysql -y
安装离子立方体装载机
cd /root
Wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
tar -xf ioncube*
cp ioncube/ioncube_loader_lin_7.2.so /use/lib/php/20170718/
创建自定义 PHP 配置文件
nano /etc/php/7.2/apache2/conf.d/10-custom.ini
粘贴以下行
zend_extension='/usr/lib/php/20170718/ioncube_loader_lin_7.2.so'
max_execution_time = 60
max_input_time =60
memory_limit = 512M
max_input_vars = 6000
upload_max_filesize = 512M
post_max_size = 512M
重新启动PHP和Apache Web服务器
systemctl restart php7.2-fpm
systemctl restart apache2
删除默认网页
rm -rf /var/www/htm/index.html
修改 Apache 的配置文件
vim /etc/apache2/sites-available/000-default.conf
添加以下行
ServerName your-primary-domain.tld
重新启动 Apache Web 服务器
systemctl restart apache2
解压缩 WHMCS 安装包
cd /root
unzip whmcs_v771_full.zip
将安装文件移动到 Web 服务器的根目录
mv whmcs/* /var/www/html
创建新的 WHMCS 配置文件
cd /var/www/html
mv configuration.php.new configuration.php
更改 Web 服务器根目录的所有权
chown -R www-data:www-data /var/www/html
HTTPS协议在我们的服务器和客户端之间提供安全的加密连接。我们将安装来自Let's Encrypt证书颁发机构的SSL证书。我们将使用一个名为certbot的程序来自动执行颁发SSL证书的过程。
添加证书机器人 PPA
apt-add-repository ppa:certbot/certbot
更新软件包
apt update
Install certbot for Apache Web server
apt install python-certbot-apache -y
颁发 SSL 证书
certbot --apache -d portal.your-primary-domaindomain.tld
输入您的电子邮件,并通过输入 A 同意条款和条件。
颁发证书后,certbot 将显示两个选项。选择重定向所有请求以保护 HTTPS 访问
选择上述选项后,HTTPS 将成功部署。
Let's Encrypt CA 提供的证书有效期仅为 90 天。
因此,您必须每3个月登录到服务器一次,然后输入以下命令来续订证书
certbot renew
到目前为止,我们已经完成了安装 WHMCS 的所有必要步骤。现在是时候开始安装过程了
从 Web 浏览器转到 https://portal.your-rimarydomain.tld/install/install.php
阅读条款和条件后,单击'同意'
WHMCS将检查所有基本要求。如果满足要求,则可以继续安装。否则,WHMCS 将告知您缺少的要求
单击'开始安装'
系统将要求您输入许可证密钥和数据库详细信息。您可以从 WHMCS 仪表板获取许可证密钥。有关数据库详细信息,请输入您的 RDS 实例详细信息。输入详细信息后,点击'继续'图标
安装几乎完成。我们只需要添加一个 cronjob 并删除安装文件夹
登录 ECS 实例并运行以下命令
crontab -e
添加以下行
*/5 * * * * /usr/bin/php -q /var/www/html/crons/cron.php
删除安装目录
rm -rf /var/www/html/install
转到 https://portal.your-primary-domain.tld/admin 以登录到WHMCS
通过 SSH 登录到另一个在 Ubuntu 18.04 上运行的 ECS 实例
ssh -i path-to-public-key.pem root@ecs-instance-ip
安装易引擎
wget -qO ee rt.cx/ee4 && bash ee
安装完成后,您将获得类似于下图的安装摘要
让我们部署我们的WordPress网站
ee site create YOUR-PRIMARY-DOMAIN.TLD
--cache
--type=wp
--admin-user=YOUR-WORDPRESS-USERNAME
--admin-pass=YOUR-WORDPRESS_PASSWORD
--admin-email=YOUR WORDPRESS EMAIL
--dbname=YOUR DB NAME
--dbuser=YOUR DB USERNAME
--dbhost=YOUR RDS INSTANCE HOSTNAME
--ssl=le
部署站点后,您将获得已部署网站的摘要,如下图所示
现在转到 https://your-primary-domain.tld/wp-admin
通过 SSH 登录在 CentOS 7 上运行的弹性云服务器
ssh -i path-to-public-key.pem root@ecs-instance-ip
更新系统
yum update
设置完全限定的 Damion 名称 (FQDN)
echo 'server.your-primary-domain.tld' > /etc/hostname
hostname -F /etc/hostname
禁用防火墙
iptables.save > ~/firewall.rules
systemctl stop firewalld.service
systemctl disable firewalld.service
禁用网络管理器
systemctl stop NetworkManager.service
systemctl disable NetworkManager.service
下载并安装 WHM
cd /home
curl -o latest -L https://securedownloads.cpanel.net/latest
sh latest
安装最多需要 45 分钟才能完成。安装结束后,使用以下命令获取 WHM 登录 URL。
Whmlogin
转到显示的登录URL并完成安装
登录到 WordPress
转到插件>>新增
搜索 WHMCS 桥接器
找到后立即单击'立即安装'
单击激活按钮以激活插件
转到 WHMCS 网桥>>设置
输入您的 WHMCS 网址
单击'检查我的安装'
如果集成成功,将显示一条成功消息,如下所示
就是这样!
登录 WHMCS
转到设置>>产品/服务>>服务器
单击'添加新服务器'
输入服务器名称、IP 地址、网络主机名等
然后,登录到 WHM
转到开发>>管理 API 令牌
单击生成令牌
检查以下权限并单击'保存'
复制生成的 API 令牌
返回到 WHMCS。填写以下详细信息
点击保存更改
现在我们已经成功集成了WHMCS和WHM
我们将使用PayPal来接收客户的付款。
转到 PayPal.Com 和注册企业帐户。如果您已经拥有PayPal个人帐户,则可以选择将其升级到企业帐户,如下所示
创建完企业帐户后,请转到'工具'>>'业务设置'>>'付款设置'>>
点击'继续'按钮,通过PayPal处理所有付款,包括信用卡和借记卡
单击'获取您的 API 凭据'
选择'请求 API 签名',然后单击'同意并提交'
复制 API 用户名、API 密码、API 签名
登录 WHMCS
转到设置>>付款>>支付网关>>PayPal快速结账
粘贴复制的 API 用户名、API 密码和 API 签名。
然后单击'保存更改'
现在,我们已经成功地将PayPal与WHMCS集成在一起!
我们已经为我们的网络托管公司成功安装和配置了WHMCS,WHM和WordPress。现在是时候创建自己的托管包并开始销售了。如果您有任何疑问,请随时在评论部分提问