提示:授权声明:本篇文章授权活动官方亚马逊云科技文章转发、改写权,包括不限于在 Developer Centre, 知乎,自媒体平台,第三方开发者媒体等亚马逊云科技官方渠道
Discuz! 是一个成熟度比较高、覆盖率挺大大的论坛网站软件系统之一,可以快速帮我们搭建一个论坛社区。这篇文章就介绍在AWS EC2上搭建 Discuz! 论坛及其所需的 LAMP(Linux + Apache + Mysql+ PHP)环境。
过程全部手动,大家在跟着实践的时候要注意实践顺序,实践要求比较简单,需要熟悉 Linux 命令,例如 CentOS 环境下通过 YUM 安装软件 等常用命令,并对所安装软件的使用及版本兼容性比较了解。
并且我们整个环境是基于 LAMP 的,所以如果懂LAMP是最好的,不懂的话跟着文章顺序来也可以完成搭建!
EC2 是亚马逊网络服务(AWS)云中提供的一项关键服务,它为用户提供了按需的、可扩展的计算容量。我们通过使用EC2,无需投入大量资金购买和维护硬件设备,降低了硬件成本,从而可以专注于应用程序的开发和部署。
我们为了搭建一个公共的、可用的、全球的论坛,所以选择了 AWS EC2,AWS有丰富的海外基础设施,众多的可用区域,基于构建出来的服务就是全球性的,所以为了让我们这个论坛能够面向更多人群,我直接部署在 aws ec2上,接下来跟着我的文章往下进行部署吧!
给我们的实例起一个名称,然后选择一个操作系统,这里操作系统我直接选择默认的 Amazon Linux
先通过web console连接到 ec2
但是如果我们希望能够通过其他ssh客户端连接的话,就需要设置一下密码和打开sshd
这里用户名我们选择root登录,然后修改密码:
passwd root
输入你要修改成的密码
cd /etc/ssh
vi sshd_config
将 PasswordAuthentication 改为 yes
# 允许root登录
PermitRootLogin yes
#重启sshd
systemctl restart sshd
重启sshd后就可以通过其他ssh客户端连接到ec2实例了,比如我使用的 finalshell
yum install httpd php php-fpm git -y
yum install openssl-devel
wget https://repo.mysql.com//mysql80-community-release-el7-7.noarch.rpm
rpm -ivh mysql80-community-release-el7-7.noarch.rpm
yum -y install mysql mysql-server mysql-devel
systemctl start httpd
systemctl start mysqld
systemctl start php-fpm
mysql -u root -p
找到mysql的默认密码
cat /var/log/mysqld.log
2023-11-14T08:11:17.020885Z 0 [System] [MY-013169] [Server] /usr/sbin/mysqld (mysqld 8.0.35) initializing of server in progress as process 97441
2023-11-14T08:11:17.031214Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-11-14T08:11:17.849751Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-11-14T08:11:19.666233Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: rGz8ekUOmq-f
2023-11-14T08:11:24.007017Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.35) starting as process 97796
2023-11-14T08:11:24.017227Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-11-14T08:11:24.513084Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-11-14T08:11:24.920288Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2023-11-14T08:11:24.920333Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel.
2023-11-14T08:11:24.961215Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Bind-address: '::' port: 33060, socket: /var/run/mysqld/mysqlx.sock
2023-11-14T08:11:24.961400Z 0 [System] [MY-010931] [Server] /usr/sbin/mysqld: ready for connections. Version: '8.0.35' socket: '/var/lib/mysql/mysql.sock' port: 3306 MySQL Community Server - GPL.
密码为: rGz8ekUOmq-f
连接mysql
mysql -u root -p
输入找到的默认密码
为了保证php环境的正常,我们写一个脚本看看 phpinfo 的情况
vi vim /var/www/html/1.php
写入以下内容:
Test Page";
phpinfo()
?>
在浏览器中,访问该1.php文件,查看环境配置是否成功。
通过 gitee 获取 Discuz! 源码,然后放入到 apache 的httpd服务下
git clone https://gitee.com/Discuz/DiscuzX.git
cd DiscuzX
cp -r upload/* /var/www/html/
chmod -R 777 /var/www/html
访问我们的IP地址进入安装向导
其他就一步一步跟着安装向导就可以完成了,最后就能看到论坛首页了
到这一个论坛就已经搭建好了,我们也可以给论坛搞一个域名,通过AWS可以直接购买,然后进行DNS记录解析,这样一个面向全球的论坛就可以通过域名访问到了,其实操作起来还是很方便的,文章若有问题,欢迎指出!