目标:
- 在 CentOS-7-x86_64 系统中安装最新版本的 Joomla! CMS。
- 支持 PHP 7。
条件:
- CentOS 7 系统安装就绪。
- 普通用户帐号,拥有
sudo
权限。
步骤:
- 安装 LAMP 之 A (Apache)。
- 安装 LAMP 之 M (MariaDB)。
- 安装 LAMP 之 P (PHP)。
- 配置 MariaDB 数据库。
- 配置 Joomla! 程序。
- 配置防火墙。
- 安装 Joomla! 程序。
安装 Web 服务
- 更新系统。
1
sudo yum update -y
- 安装 Apache。
1
sudo yum install -y httpd
- 启动服务,并配置开机即启动。
1
2sudo systemctl start httpd
sudo systemctl enable httpd安装数据库服务
- 向系统添加 MariaDB 仓库。编辑内容如下。
1
sudo vim /etc/yum.repos.d/mariadb.repo
1
2
3
4
5[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1 - 更新仓库。
1
sudo yum update -y
- 安装 MariaDB。
1
sudo yum install -y mariadb-server
- 启动服务,并配置开机即启动。
1
2sudo systemctl start mariadb
sudo systemctl enable mariadb安装 PHP 及相关模块
- 安装并更新 PHP 7 仓库。
1
2sudo yum install -y http://dl.iuscommunity.org/pub/ius/stable/CentOS/7/x86_64/ius-release-1.0-14.ius.centos7.noarch.rpm
sudo yum update -y - 安装 PHP 7。
1
sudo yum -y install php70u php70u-pdo php70u-mysqlnd php70u-opcache php70u-xml php70u-mcrypt php70u-gd php70u-devel php70u-intl php70u-mbstring php70u-bcmath php70u-json php70u-iconv
配置 MariaDB 数据库
- 执行数据库安全配置脚本。完成如下配置(中括号内的大写
1
sudo mysql_secure_installation
Y
为默认选项,回车即可),为数据库root
用户设置强密码(初始密码为空)。1
2
3
4
5
6Enter current password for root (enter for none):
Change the root password? [Y/n]
Remove anonymous users? [Y/n]
Disallow root login remotely? [Y/n]
Remove test database and access to it? [Y/n]
Reload privilege tables now? [Y/n] - 为 Joomla! 新建一个数据库和一个数据库用户。
以数据库 root 用户登录 MariaDB。按提示输入密码,并新建1
mysql -u root -p
joomladb
数据库和joomlauser@localhost
用户(注意修改单引号内password
为新用户密码)。1
2
3
4
5MariaDB [(none)]>create database joomladb;
MariaDB [(none)]>create user joomlauser@localhost identified by 'password';
MariaDB [(none)]>grant all privileges on joomladb.* to joomlauser@localhost;
MariaDB [(none)]>flush privileges;
MariaDB [(none)]>exit配置 Joomla! 程序
- 下载最新版本的 Joomla!,写作此教程时的最新版本号为 3.7.0。
1
wget https://github.com/joomla/joomla-cms/releases/download/3.7.0/Joomla_3.7.0-Stable-Full_Package.tar.gz
- 解压文件至 Web 服务的根目录
/var/www/html/
。1
sudo tar -xvzf Joomla_3.7.0-Stable-Full_Package.tar.gz -C /var/www/html/
- 配置 Web 服务根目录的权限。
1
2sudo chown -R apache:apache /var/www/html/
sudo chmod -R 775 /var/www/html/ - 编辑 Web 服务的配置文件。查找
1
sudo vim /etc/httpd/conf/httpd.conf
/var/www/html/
下的AllowOverride
项,将AllowOverride None
改为AllowOverride All
。
保存文件,并重启 Web 服务。1
sudo systemctl restart httpd
配置防火墙
- 查看系统启用的防火墙是 firewall 还是 iptables。
1
2systemctl status firewalld
systemctl status iptablesActive:
状态为active (exited)
的程序是系统启用的防火墙。 - 若 firewall 启用,
1
2
3sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload - 若 iptables 启用,在
1
sudo vim /etc/sysconfig/iptables
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
行的下面,添加如下内容。保存文件,并重启 iptables。1
2-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT1
sudo systemctl restart iptables
安装 Joomla! 程序
- 打开浏览器,输入你的服务器地址,访问 Joomla! 安装向导。
- 特别注意,Database Type 请选择 MySQL(PDO)!
- 安装完成后,删除 installation 目录。
- 再次访问你的网站,地址后加
/administrator
进入管理登录页面。 - 开始你的 Joomla! 之旅。
(END)