Joomla ! 建站系统镜像使用指南
操作系统:centos 6.5
软件明细:Nginx - PHP - MySQL - FTP - Joomla
注:各个软件版本以云市场镜像中产品介绍为准。
镜像环境里相应软件的安装,是基于阿里云 linux 版的一键安装包源码 1.3.0 版本,在此基础上修改、优化了相应功能,编译安装完成。
在镜像环境中,/root/sh-1.3.0-centos-joomla.zip 是安装镜像环境的脚本,您可以在 centos 6.5 系统中自行采用此脚本安装,安装后的环境跟镜像里初始化的环境一致。值得注意的是,如果采用此脚本安装镜像环境,需要 chmod 777 -R sh-1.3.0-centos-joomla 赋予 777 安装权限。
在镜像环境中出于安全考虑,joomla 默认设置页面只容许 127.0.0.1 访问,/root/ 目录下提供一个 joomla_opennet.sh 的脚本 。用户运行此脚本后,可以通过外网访问 joomla 的默认设置页面。
在镜像环境中,/root/sh-1.3.0-centos-joomla 是安装环境的主目录,镜像中的环境是在此目录下编译安装的。
密码存储位置: /alidata/account.log文件中。
查看密码: 进入服务器的系统中,可以在任意的目录下,执行以下命令
cat /alidata/account.log (注意:cat后面要有空格)
修改 ftp 的密码: 用 root 用户登录系统,然后执行下面命令:
passwd www
然后输入您的 ftp 新密码。
修改 mysql 的密码:
mysqladmin -uroot -p旧密码 password 新密码
注意:-p 和旧密码之间没有空格,password 和新密码之间有空格
软件的主目录:/alidata web 主目录:/alidata/www ftp 主目录:/alidata/www nginx 主目录:/alidata/server/nginx nginx 配置文件主目录:/alidata/server/nginx/conf php 主目录:/alidata/ server/php php 配置文件主目录:/alidata/ server/php/etc mysql 主目录:/alidata/server/mysql mysql 配置文件:/etc/my.cnf joomla 中文支持包存放目录:/alidata/res 日志目录: /alidata/log/nginx 为 nginx 存放日志主目录 /alidata/log/php 为 php 存放日志主目录 /alidata/log/mysql 为 mysql 存放日志主目录 init 目录: /alidata/init 为当用户用镜像创建系统后,当且仅当用户在第一次启动系统的时候,调用此目录下的脚本来初始化 ftp 及 mysql 的密码(随机密码)。
/etc/init.d/mysqld start|stop|restart
/etc/init.d/php-fpm start|stop|restart
/etc/init.d/vsftpd start|stop|restart
/etc/init.d/nginx start|stop|restart
如何卸载镜像环境中安装的软件,可以参考如下命令完成卸载:
cd /root/sh-1.3.0-centos-joomla
./uninstall.sh
备注一:执行以上卸载,会清理镜像环境的 /alidata 目录,请卸载前自行备份好相应数据。
备注二:如果 /root/sh-1.3.0-centos-joomla 被误删,则也可以解压 /root/sh-1.3.0-centos-joomla.zip,可以参考以下命令:
cd
unzip sh-1.3.0-centos-joomla.zip
chmod 777 -R sh-1.3.0-centos-joomla
cd sh-1.3.0-centos-joomla
./uninstall.sh
在镜像环境中出于安全考虑,joomla 默认设置页面只容许 127.0.0.1 访问,/root/ 目录下提供一个 joomla_opennet.sh 的脚本 。
用户运行此脚本后,可以通过外网访问 joomla 的默认设置页面。 运行脚本文件:/root/joomla_opennet.sh
1、初次使用镜像安装系统,运行 /root/joomla_opennet.
http://ip 回车即可以看到 Joomla 初始化界面。
2、选择安装语言,并输入完成相关内容后,点击”下一步”。
3、选择 mysql 数据库,输入相关权限后,点击”下一步”。
4、查看相关配置是否符合,确认完毕后,点击”安装”。
5、安装完毕。
进入服务器 /alidata/www/default 目录下,删除 installation 目录。
cd /alidata/www/default
rm -rf installation/
至此,joomla 搭建完成。
访问前端网站:http://ip;
访问后台管理:http://ip/administrator。
备注 1:
关于 joomla 中文支持
Joomla安装完成后,默认前台和后台都是英文界面。中文语言支持需要自己手动安装。
登录Joomla管理后台后,点击“Extensions”(扩展)——“Extension Manager”(扩展管理):
打开“扩展管理”设置页面后,上传简体中文包(中文包放置在服务器的/alidata/res目录中,可以将中文包下载到本地后上传):
点击 “Update & Install” 上传:
点击 “Extensions” (扩展)—— “Language Manager” (语言管理),设置前段后台的默认语言:
点击 logout,重新登录后,就能进入中文支持界面:
用镜像生成系统后,网站的数据目录都默认在系统盘的 /alidata/www 目录下。
如果您的应用数据量较大,系统盘默认的20G大小可能不够用。这需要我们将网站迁移至数据盘中。
1、首先分区并格式化我们的数据盘。如果已经格式化数据盘,此步可以不用做。
2、以《附录教程一:部署 joomla》为例,然后我们执行以下命令迁移joomla至数据盘中:
/etc/init.d/nginx stop
#首先停止 nginx 服务
/etc/init.d/php-fpm stop
#首先停止 php 服务
cd /
#进入根目录下
mount /dev/xvdb1 /mnt/
将第一块数据盘挂载至 mnt 目录下,也可以根据您自己的需要,挂载至其他数据盘中。
这里也可以尝试:mount /dev/xvdb1 /alidata/www
直接把/alidata/www 目录挂载在数据盘中,似乎更加方便。
mkdir -p /mnt/www /mnt/log
cp -a /alidata/www/default /mnt/www/
#将数据迁移至数据盘中
3、vim /alidata/server/nginx/conf.d/vhost/default.conf
将 “root /alidata/www/default;”更改为 “/mnt/www/default;” 将 “access_log /alidata/log/nginx/access/default.log;” 更改为 “access_log /mnt/log/default.log;” 4、启动 php、nginx 完成迁移:
/etc/init.d/php-fpm start
/etc/init.d/nginx start
镜像部署的 mysql 的安装目录及数据目录都存放在系统盘中,同样考虑到系统盘空间不够用的情况,后面如果我们部署的 mysql 数据量很大,这里就需要我们将我们的 mysql 迁移至数据盘中。
mysql 迁移至数据盘中,一般指将 mysql 的数据目录迁移至数据盘中。具体操作步骤可以参考如下:
1、首先格式化磁盘,并将数据盘挂载在 mnt 目录下(根据您自己的需求,也可以挂载在其他目录下)
mkdir -p /mnt/data
2、用 mysqldump 命令导出您项目所有的数据,命令参考如下:
mysqldump -p --all-databases > all.sql
3、停止 mysql :
/etc/init.d/mysqld stop
4、vim /etc/init.d/mysqld
将文件中“datadir=/alidata/server/mysql/data” 中的目录地址更改为您迁移至数据盘中的目录地址,即 “datadir=/mnt/data”。
5、然后用以下命令初始化一个全新的数据库环境:
/alidata/server/mysql/scripts/mysql_install_db --basedir=/alidata/server/mysql --datadir=/mnt/data --user=mysql
值得注意的是 datadir 为您 mysql 的数据目录。
6、启动 mysql,然后将数据还原至新的数据盘中:
/etc/init.d/mysqld start
mysql < all.sql
/etc/init.d/mysqld restart
很多用户反馈,用镜像生成系统后,云主机本地能够连接 mysql,为何远程连接不上 mysql 呢?这是因为默认安装的 mysql,出于安全考虑,只能本地连接。
如果您需要远程连接,这里就需要设置一下 mysql 的权限表。具体设置的步骤如下:
1、在您的云主机上连接进入 mysql 。
2、执行以下 mysql 命令
``use mysql ` #打开 mysql 数据库 将 host 设置为 % 表示任何 ip 都能连接 mysql,当然您也可以将 host 指定为某个 ip
update user set host='%' where user='root' and host='localhost';
flush privileges;
#刷新权限表,使配置生效
然后我们就能远程连接我们的 mysql 了。
3、如果您想关闭远程连接,恢复 mysql 的默认设置(只能本地连接),您可以通过以下步骤操作:
use mysql
#打开 mysql 数据库
update user set host='localhost' where user='root';
#将 host 设置为 localhost 表示只能本地连接 mysql
flush privileges;
#刷新权限表,使配置生效
备注:您也可以添加一个用户名为 yuancheng,密码为 123456,权限为%(表示任意 ip 都能连接)的远程连接用户。
命令参考如下:
grant all on *.* to 'yuancheng'@'%' identified by '123456';
flush privileges;