管理系统(CMS)世界中,织梦(DedeCMS)凭借其对中文用户友好的设计、丰富的模板生态和强大的功能,长期占据着重要地位,对于追求稳定与安全的企业级应用而言,将织梦部署在 CentOS 7 服务器上是一个经典且可靠的组合,本文将为您提供一份详尽、清晰、结构化的指南,帮助您在 CentOS 7 系统上从零开始搭建一个安全、高效的织梦网站。
环境准备与基础配置
在开始安装织梦之前,一个干净、配置良好的服务器环境是成功的基石,CentOS 7 以其卓越的稳定性著称,是理想的服务器操作系统。
我们需要确保系统软件包是最新的,并安装一些必要的基础工具,通过 SSH 连接到您的服务器,执行以下命令:
yum update -y yum install -y wget vim unzip
yum update -y
会更新所有已安装的软件包至最新版本,修复潜在的安全漏洞。wget
用于从网络下载文件,vim
是一个强大的文本编辑器,而 unzip
则用于解压织梦的安装包。
为了简化初期的配置过程并避免防火墙和 SELinux 带来的访问阻碍,我们暂时将其关闭,在生产环境中,强烈建议您学习并配置相应的防火墙规则和 SELinux 策略,而非直接关闭。
# 停止并禁用防火墙 systemctl stop firewalld systemctl disable firewalld # 临时关闭 SELinux setenforce 0 # 永久关闭 SELinux,需要重启后生效 vim /etc/selinux/config # 将文件中的 SELINUX=enforcing 修改为 SELINUX=disabled
至此,基础环境准备完毕,接下来我们将构建运行织梦所必需的 LAMP(Linux + Apache + MariaDB + PHP)环境。
搭建 LAMP 环境
LAMP 环境是运行织梦这类 PHP 应用程序最经典的架构之一。
安装 Apache (httpd)
Apache 是一款功能强大的 Web 服务器,在 CentOS 7 中,我们可以通过 yum
直接安装。
yum install -y httpd
安装完成后,启动 Apache 服务并将其设置为开机自启:
systemctl start httpd systemctl enable httpd
您可以在浏览器中访问服务器的 IP 地址,如果看到 Apache 的测试页面,则说明 Web 服务器已成功运行。
安装 MariaDB
MariaDB 是 MySQL 的一个分支,完全兼容 MySQL,并且在 CentOS 7 中已成为默认的数据库系统。
yum install -y mariadb-server mariadb
同样,启动服务并设置开机自启:
systemctl start mariadb systemctl enable mariadb
为了数据库的安全,执行 MariaDB 提供的安全安装脚本:
mysql_secure_installation
此脚本会引导您完成一系列安全设置,包括:设置 root 用户密码、移除匿名用户、禁止 root 远程登录、移除测试数据库等,请根据提示进行操作,强烈建议全部选择“Y”。
安装 PHP 及必要扩展
织梦对 PHP 及其扩展有特定要求,CentOS 7 默认的 PHP 版本较低,为了更好的性能和安全,我们建议安装较新的 PHP 7.4 版本,这需要启用 Remi 仓库。
# 安装 EPEL 和 YUM 工具 yum install -y epel-release yum-utils # 安装 Remi 仓库 yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm # 启用 PHP 7.4 仓库 yum-config-manager --enable remi-php74 # 安装 PHP 7.4 及织梦所需扩展 yum install -y php php-mysqlnd php-gd php-xml php-mbstring php-json php-curl
安装完成后,重启 Apache 服务使其加载 PHP 模块:
systemctl restart httpd
为了验证 PHP 是否安装成功,我们可以在网站根目录(/var/www/html
)下创建一个 info.php
文件:
echo "<?php phpinfo(); ?>" > /var/www/html/info.php
再次在浏览器中访问 http://服务器IP/info.php
,如果能看到 PHP 的版本信息页面,则表明 LAMP 环境已搭建成功,测试后,请务必删除此文件,因为它会泄露服务器信息。
rm -f /var/www/html/info.php
下载与安装织梦CMS
环境就绪后,我们正式进入织梦的安装环节。
下载并解压织梦源码
前往织梦官方网站下载最新版的 UTF-8 编码源码包,使用 wget
命令直接下载到服务器上。
# 请将下面的链接替换为官方最新的下载链接 wget http://updatenew.dedecms.com/base-v57/package/DedeCMS-V5.7-UTF8-SP2.tar.gz
下载完成后,解压文件并将程序文件移动到网站根目录,织梦的源码通常在一个名为 uploads
或 DedeCMS-V5.7-UTF8-SP2
的目录内。
tar -xzvf DedeCMS-V5.7-UTF8-SP2.tar.gz cp -r DedeCMS-V5.7-UTF8-SP2/uploads/* /var/www/html/
设置目录权限
这是至关重要的一步,Apache 用户(默认为 apache
)需要对网站目录有读写权限,否则安装过程会因权限不足而失败。
chown -R apache:apache /var/www/html/ chmod -R 755 /var/www/html/
创建数据库与用户
织梦需要一个专用的数据库,登录到 MariaDB,为其创建一个数据库和用户。
mysql -u root -p # 输入您之前设置的 root 密码
在 MariaDB 命令行中执行以下 SQL 语句:
CREATE DATABASE dedecms_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'dedecms_user'@'localhost' IDENTIFIED BY 'YourStrongPassword'; GRANT ALL PRIVILEGES ON dedecms_db.* TO 'dedecms_user'@'localhost'; FLUSH PRIVILEGES; EXIT;
请将 YourStrongPassword
替换为一个复杂且安全的密码。
运行网页安装程序
所有准备工作均已完成,在浏览器中访问 http://服务器IP/install
,您将看到织梦的安装向导,按照页面提示进行操作:
- 许可协议:同意并继续。
- 环境检测:系统会自动检测服务器环境是否满足要求,如果前述步骤无误,此处应全部显示为正常。
- 参数配置:
- 数据库设置:填入刚才创建的数据库名(
dedecms_db
)、用户名(dedecms_user
)和密码。 - 网站设置:设置管理员用户名和密码。安全起见,不要使用默认的 “admin” 作为用户名。
- 数据库设置:填入刚才创建的数据库名(
- 安装完成:安装程序会自动创建数据表和配置文件。
安装成功后,系统会提示您删除 install
目录,请务必通过 SSH 或文件管理器删除它,以防止被恶意利用。
rm -rf /var/www/html/install
至此,您的织梦网站已成功部署在 CentOS 7 服务器上,您可以通过 http://服务器IP
访问网站前台,通过 http://服务器IP/dede
访问后台。
后续配置与安全建议
为了让网站更加安全,以下是几项强烈建议的后续操作。
项目 | 默认/风险 | 建议操作 |
---|---|---|
后台登录地址 | 默认为 /dede ,是攻击者扫描的首要目标 | 重命名后台目录,例如将 /var/www/html/dede 改为 /var/www/html/my_admin_2025 |
管理员账户 | 常使用 admin ,容易被暴力破解 | 安装时使用不易猜测的自定义用户名 |
数据库前缀 | 默认为 dede_ ,容易被猜测 | 在安装时使用自定义的、复杂的前缀,如 site_prefix_ |
目录权限 | 某些目录(如 uploads )可能需要写权限,但不应是 777 | 严格按照需求设置权限,对无需写入的目录设置为 755 ,文件设置为 644 |
相关问答FAQs
问题1:安装过程中提示“目录不可写”或“权限不足”怎么办?
解答: 这是一个典型的 Linux 权限问题,出现此提示,意味着 Web 服务器的运行进程(对于 Apache 是 apache
用户)没有对指定目录的写入权限,请通过 SSH 登录服务器,执行以下命令来解决,首先确保目录的所有者是正确的 Web 服务器用户:
chown -R apache:apache /var/www/html/
为目录和文件设置合适的权限,对于大部分目录,755
权限已足够;对于需要写入的特定目录(如 uploads
, a
),可以临时设置为 755
或 775
,但绝不建议使用 777
,对于文件,644
是最安全的权限。
find /var/www/html/ -type d -exec chmod 755 {} ; find /var/www/html/ -type f -exec chmod 644 {} ;
如果仍有特定目录需要写入,可以单独为其授权,
chmod 755 /var/www/html/uploads
问题2:如何为织梦配置 Apache 的伪静态(URL重写)?
解答: 伪静态可以让网站 URL 更加美观且对搜索引擎友好,在 Apache 上配置伪静态需要两个步骤:
,在 CentOS 7 的默认 Apache 安装中,此模块通常是启用的,您可以通过 httpd -M | grep rewrite_module
命令检查,如果没有任何输出,则需要编辑httpd.conf
文件,去掉LoadModule rewrite_module modules/mod_rewrite.so
这一行前面的 号,然后重启 Apache。,织梦通常会自带一个 .htaccess
文件,如果没有,您可以手动创建一个vim /var/www/html/.htaccess
,并将以下规则写入:<IfModule mod_rewrite.c> RewriteEngine On # 文件夹访问 RewriteRule ^(data|uploads|templets)/(.*)$ - [L] # 文章列表 RewriteRule ^plus/list-([0-9]+).html$ /plus/list.php?tid=$1 # 文章内容页 RewriteRule ^plus/view-([0-9]+)-([0-9]+).html$ /plus/view.php?aid=$1&pageno=$2 # 其他规则... </IfModule>
确保您的 Apache 主配置文件(
/etc/httpd/conf/httpd.conf
)中,网站根目录的AllowOverride
设置为All
,这样才能使.htaccess
文件生效,修改后需重启 Apache 服务 (systemctl restart httpd
),织梦后台也有生成伪静态规则的功能,您可以在后台系统设置中找到并生成适用于您网站栏目的规则。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复