如何在 Ubuntu 24.04 上安装 TYPO3 CMS
TYPO3 是一个免费开源的企业级内容管理系统。 它提供企业级功能,例如具有多站点支持的可扩展 CMS、多语言安装、强大的安全实施、速度极快,并且可以在任何地方运行。
使用TYPO3 CMS可以让您构建灵活可靠的网站。 TYPO3 CMS 得到了充满活力的专业社区的支持。 从设计上来说,TYPO3 CMS 是一个可插拔的内容管理系统,具有适应性强和解耦的架构。
在本指南中,您将在 Ubuntu 24.04 服务器上安装 TYPO3。 您将使用 LAMP Stack(Linux、Apache、MySQL/MariaDB 和 PHP)、Composer 和 GraphicsMagick 安装 TYPO3。
先决条件
要开始使用本指南,请确保您具备以下条件:
- Ubuntu 24.04 服务器。
- 具有管理员权限的非 root 用户。
- 域名指向服务器IP地址。
安装依赖项
TYPO3是一个用PHP编写的开源内容管理系统,支持MySQL/MariaDB和PostgreSQL等数据库。 在本节中,您将安装 TYPO3 的依赖项,其中包括 LAMP 堆栈(Linux、Apache、MySQL/MariaDB 和 PHP)、作为 PHP 依赖项管理的 Composer 以及用于图像处理的 GraphicsMagick。
在开始之前,请使用以下命令更新您的 Ubuntu 软件包索引。
sudo apt update
现在使用以下“apt install”命令安装 TYPO3 CMS 的软件包依赖项。 使用此命令,您将安装依赖项,例如 LAMP Stack(Linux、Apache、MySQL/MariaDB 和 PHP)、作为 PHP 包管理器的 Composer、Git 和用于自动图像处理的 GraphicsMagick。
sudo apt install apache2 mariadb-server composer graphicsmagick php php-common php-mysql libapache2-mod-php php-gd php-curl php-json php-xmlrpc php-intl php-gmagick php-bcmath php-zip php-apcu php-mbstring php-fileinfo php-xml php-soap
键入 Y 继续安装。
安装完成后,验证 Apache 和 MariaDB 服务的状态,然后检查 PHP、Composer 和 GraphicsMagick 版本。
使用以下命令验证 Apache 服务状态。 您应该将 Apache 服务的输出显示为“已启用”和“活动(正在运行)”。
sudo systemctl is-enabled apache2
sudo systemctl status apache2
接下来,使用以下命令检查 MariaDB 服务状态。 输出应该与 Apache 类似,您将看到 MariaDB 服务器已“启用”且“活动(正在运行)”。
sudo systemctl is-enabled mariadb
sudo systemctl status mariadb
现在执行以下命令来检查 PHP 和 Composer 版本。 在 Ubuntu 24.04 上,默认 PHP 版本为 8.3,Composer 为 2.7.1。
php -v
sudo -u www-data composer --version
最后,使用以下命令检查 GraphicsMagick 版本。 您应该会看到 GraphicsMagick 1.3 安装在您的 Ubuntu 系统上。
gm version
配置 PHP
要安装 TYPO3,您必须更改默认的 PHP 配置文件“php.ini”。 您需要编辑 Apache 和 PHP CLI 的“php.ini”文件,然后更改 TYPO3 安装的一些默认配置。
使用以下 nano 编辑器命令编辑 Apache 和 PHP CLI 的“php.ini”文件。
sudo nano /etc/php/8.3/apache2/php.ini
sudo nano /etc/php/8.3/cli/php.ini
使用以下内容更改默认配置。 确保根据您的服务器环境调整“memory_limit”和“date.timezone”选项。
date.timezone = Europe/Amsterdam
memory_limit = 512M
max_execution_time = 240
max_input_vars = 1500
post_max_size = 50M
upload_max_filesize = 50M
保存文件并退出。
现在运行以下命令以重新启动 Apache 服务并在 PHP 上应用您的更改。
sudo systemctl restart apache2
之后,运行以下命令在“/var/www/html”目录中创建一个新的“info.php”文件。
echo "" > /var/www/html/info.php
最后,使用您喜欢的网络浏览器访问http://192.168.5.30/info.php。 您将看到 PHP 配置的详细信息,确保应用通过“php.ini”配置的所有内容。
检查“Core”部分以查看“memory_limit”、“post_max_size”、“max_execution_time”以及 PHP 安装的其他内容。
配置 MariaDB 服务器
现在您已经配置了 PHP,您需要保护 MariaDB 服务器的安全,然后为 TYPO3 创建一个新的数据库和用户。 在本部分中,您将使用“mariadb-secure-installation”实用程序保护 MariaDB 并从命令行创建新的数据库和用户。
通过执行下面的“mariadb-secure-installation”命令来保护您的 MariaDB 服务器安装。
sudo mariadb-secure-installation
现在,系统将提示您配置 MariaDB 服务器。 输入 Y 接受默认设置,或输入 n 拒绝默认设置。
- 默认的 MariaDB 安装没有密码,当提示输入密码时按 ENTER。
- 现在输入 Y 设置 MariaDB root 密码。 然后,输入 MariaDB 的新密码并重复该密码。
- 输入 Y 从 MariaDB 安装中删除匿名用户。
- 当提示禁用 MariaDB root 用户远程登录时,再次输入 Y。
- 输入 Y 从 MariaDB 中删除默认数据库测试。
- 最后,输入 Y 重新加载表权限并应用新的更改。
配置 MariaDB 服务器后,使用以下命令登录 MariaDB。 出现提示时输入您的 MariaDB root 密码。
sudo mariadb -u root -p
现在运行以下查询来创建一个新数据库“typo3db”和一个新用户“typo3”,密码为“Typo3Password”。 根据需要更改详细数据库信息。
CREATE DATABASE typo3db;
GRANT ALL PRIVILEGES ON typo3db.* to typo3@localhost IDENTIFIED BY 'Typo3Password';
FLUSH PRIVILEGES;
接下来,运行下面的查询来检查用户“typo3”的权限。 这将确保用户“typo3”可以访问 TYPO3 CMS 安装的数据库“typo3db”。
SHOW GRANTS FOR typo3@localhost;
下面的输出显示用户“typo3”可以访问数据库“typo3db”。
最后,输入 quit 退出 MariaDB 服务器。
通过 Composer 下载 TYPO3
有多种方法可以安装和下载 TYPO3 源代码。 现在您将设置TYPO3安装目录,然后使用Composer(PHP依赖项管理)下载TYPO3。
首先,运行以下命令为 Composer 缓存和配置创建新目录,以及 TYPO3 安装目录“/var/www/typo3”。
sudo mkdir -p /var/www/{.cache,.config,typo3}
现在运行以下命令将上述目录的所有权更改为用户“www-data”,然后启用对“/var/www/typo3”目录的读写访问权限。
sudo chown -R www-data:www-data /var/www/{.cache,.config,typo3}
sudo chmod u+rw /var/www/typo3
接下来,转到“/var/www/typo3”目录并使用下面的“composer”命令安装 TYPO3 CMS。 在此示例中,您将在 Ubuntu 服务器上安装最新版本的 TYPO3 CMS v12。
cd /var/www/typo3
sudo -u www-data composer create-project typo3/cms-base-distribution:^12 .
您可以在下面看到TYPO3 CMS的下载和安装过程:
通过命令行设置 TYPO3
下载TYPO3 CMS源代码后,您将使用命令行配置TYPO3安装。 您还可以使用 Web 浏览器设置 TYPO3 安装,但现在您将从终端配置 TYPO3 CMS 安装。
要通过命令配置 TYPO3 CMS 安装,请运行以下命令:
./vendor/bin/typo3 setup
系统将提示您进行以下配置:
- 键入 apache 作为 Web 服务器。
- 键入 mysqli 作为数据库驱动程序。
- 输入将用于 TYPO3 CMS 的 MariaDB 用户、密码、端口和主机的详细信息。
- 键入typo3db 作为数据库名称。
- 输入 TYPO3 CMS 的管理员用户、密码和电子邮件地址。 您的密码必须包含至少一个特殊字符。
- 对于项目名称,保留默认值。
- 当要求创建基本站点时按 ENTER。
如果安装成功,您将看到输出“恭喜 – TYPO3 安装已完成”。
最后,重新运行以下命令将“/var/www/typo3”目录的所有权更改为用户“www-data”。
sudo chown -R www-data:www-data /var/www/typo3
设置 Apache 虚拟主机
现在您已经从终端配置了 TYPO3,让我们继续为 TYP3 安装配置 Apache 虚拟主机。 因此,请确保您已准备好您的域名。
首先,使用以下命令激活 Apache“重写”模块。
sudo a2enmod rewrite
然后使用以下 nano 编辑器命令创建一个新的虚拟主机文件“/etc/apache2/sites-available/typo3.conf”。
sudo nano /etc/apache2/sites-available/typo3.conf
插入以下配置并确保将 ServerName 选项更改为您的 TYPO3 CMS 域名。 在此示例中,TYPO3 CMS 将在域“hwdomain.io”上运行。
ServerAdmin [email protected]
DocumentRoot /var/www/typo3/public
ServerName hwdomain.io
Options FollowSymlinks
AllowOverride All
Require all granted
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*) index.php [PT,L]
现在运行以下命令来激活“typo3.conf”虚拟主机文件并验证您的 Apache 语法。 如果您有正确的 Apache 语法,将会显示输出“Syntax OK”。
sudo a2ensite typo3.conf
sudo apachectl configtest
最后,使用以下命令重新启动 Apache 服务以应用您的 TYPO3 CMS 虚拟主机。 执行后,您的 TYPO3 CMS 安装将准备就绪。
sudo systemctl restart apache2
使用 HTTPS 保护 TYPO3 CMS
在本部分中,您将使用 Certbot 和 Letsencrypt 通过 HTTPS 保护 TYPO3 CMS。 Certbot 将用于从 Letscrypt 生成 SSL/TLS 证书。 此外,您将使用 Certbot Apache 插件在虚拟主机上设置自动 HTTPS。
使用以下命令安装 Certbot 和 Certbot APache 插件。 键入 Y 继续安装。
sudo apt install certbot python3-certbot-apache
安装后,运行下面的“certbot”命令为您的 TYPO3 CMS 域名生成 SSL/TLS 证书。 因此,请务必使用您的信息更改域名和电子邮件地址。
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d hwdomain.io
该过程完成后,您的 TYPO3 CMS 将自动使用 HTTPS 进行保护。 您的 SSL/TLS 证书可在“/etc/letsencrypt/live/domain.com”目录中找到。
访问 TYPO3
使用您首选的网络浏览器访问 TYPO3 CMS 登录页面:https://hwdomain.io/typo3。 如果安装成功,您应该会看到 TYPO3 CMS 登录页面。
输入您的管理员用户和密码,然后单击“登录”进行确认。
登录后,您将看到 TYPO3 CMS 管理仪表板,如下所示:
在右上角的菜单中,单击信息图标以获取有关 TYPO3 CMS 堆栈的详细信息。 如下所示,TYPO3 CMS 12.4 安装了 Apache 2.4.58、MariaDB 服务器 10.11、PHP 8.3,并且启用了 Composer 模式。
结论
恭喜 您已在 Ubuntu 24.04 服务器上安装了 TYPO3 CMS。 您的 TYPO3 CMS 运行在 LAMP 堆栈(Linux、Apache、MySQL/MariaDB 和 PHP)、GraphicsMagick 图像处理和启用的 Composer 模式下。 您还使用 Certbot 和 Letsencrypt 通过 HTTPS 保护 TYPO3 CMS。
资讯来源:由a0资讯编译自THECOINREPUBLIC。版权归作者A0资讯所有,未经许可,不得转载