技术支持 云市场镜像产品 PHP 运行环境 PHP 运行环境(Apache)

PHP 运行环境(Apache)

1.在镜像环境中,/root/sh-1.5.5-centos.zip 中有安装镜像环境的脚本,您可以在 CentOS 系统中自行采用此脚本安装,安装后的环境跟镜像里初始化的环境一致(此镜像环境下无需执行此脚本安装),安装过程可参考以下命令:

 unzip /root/sh-1.5.5-centos.zip 
chmod -R 777 sh-1.5.5-centos 
cd /root/sh-1.5.5-centos 
 ./install.sh

2.在镜像环境中,/root/sh-1.5.5-centos 是安装环境的主目录,镜像中的环境是在此目录下编译安装的。

首次进入该软件环境,可以执行 /alidata/init 目录下的优化脚本 optimization.sh。

此脚本可根据 ECS 配置优化 mysql、php 的相应参数。

注:此脚本执行后会初始化配置文件,如您已自行修改过配置文件,请谨慎操作。

具体操作可参考如下命令:

 cd /alidata/init                       #进入init目录
 ./optimization.sh                     #执行优化脚本

默认的 mysql 的用户名/密码以及使用初始化脚本修改后的密码保存在 /alidata/account.log 文件中。

可用以下命令查看:

cat /alidata/account.log 

** 关于如何修改 mysql 的密码,可以参考如下两种方式:** 1.一键修改 root 用户密码(此脚本仅支持修改 root 用户密码,如需修改 mysql 数据库的其他用户密码,请参考“2.命令行修改 mysql 密码”):

 cd /alidata/init 
 ./reset_db.sh 

2.命令行修改 mysql 用户密码:

mysqladmin –u用户名 -p老密码  password  新密码

老密码即mysql用户当前的密码,新密码即您修改后的密码。 -p跟老密码之间没有空格。老密码跟“password”之间有空格,password跟新密码之间有空格。

很多用户反馈,用镜像生成系统后,云主机本地能够连接 mysql ,为何远程连接不上 mysql 呢?这是因为默认安装的 mysql ,出于安全考虑,只允许本地连接。如果您要开启 root 用户远程连接的权限,可执行以下操作: 命令:

 cd /alidata/init                  #进入init目录
 ./remote_connection.sh             #执行脚本

出现以上提示表示开启成功! 如果您想关闭 root 用户的远程连接,恢复 mysql 的默认设置( root 用户只允许本地连接),您可以执行以下操作:

 mysql -uroot -pxxx(mysql的root用户密码)      #登陆数据库
 use mysql                                     #打开mysql数据库
 delete from user where host='%' ;              #将远程连接关闭
 flush privileges;                               #刷新权限表,使配置生效
exit;                                           #退出数据库

备注:您也可以为 mysql 连接添加新的用户名,如添加用户名 test ,密码为123456,权限为%(表示任意ip都能连接)的远程连接用户。 命令参考如下:

mysql -uroot -pxxx(mysql的root用户密码) 
use mysql 
grant all on *.* to 'test'@'%' identified by '123456'; 
flush privileges; 
exit; 

1.新建 vsftp 用户

2.删除 vsftp 用户

3.修改 ftp 用户主目录

4.修改 vsftp 密码

软件的主目录:/alidata web主目录:/alidata/www ftp主目录:/alidata/www apache主目录:/alidata/server/httpd apache配置文件主目录:/alidata/server/httpd/conf php主目录:/alidata/server/php php配置文件主目录:/alidata/server/php/etc mysql主目录:/alidata/server/mysql mysql配置文件:/etc/my.cnf 日志目录: /alidata/log/httpd 为apache存放日志主目录 /alidata/log/php 为php存放日志主目录 /alidata/log/mysql 为mysql存放日志主目录 init目录: /alidata/init 为本镜像环境中脚本存放路径。

apache:

 /etc/init.d/httpd start      #启动 
 /etc/init.d/httpd stop      #停止 
 /etc/init.d/httpd restart    #重启 

mysql:

 /etc/init.d/mysqld start         #启动 
 /etc/init.d/mysqld stop         #停止 
 /etc/init.d/mysqld restart       #重启 

ftp:

 /etc/init.d/vsftp start           #启动 
 /etc/init.d/vsftp stop           #停止 
 /etc/init.d/vsftp restart         #重启 

命令行查看当前使用的php版本:

php -v

关于卸载 如何卸载镜像环境中安装的软件,可以参考如下命令完成卸载:

 cd /root/sh-1.5.5-centos
 ./uninstall.sh 

执行以上卸载,会清理镜像环境的/alidata目录,请卸载前自行备份好相应数据。

教程一:部署网站

1.在使用镜像安装系统后, 在 /alidata/init 目录下,我们可以看到部署站点的脚本 vhost.sh。 部署网站分两种情况:域名站点和无域名站点(无域名一般是用户未购买域名或者域名未备案)。

无域名站点部署: 命令:

 cd /alidata/init 
 ./vhosts.sh 

注: 网站目录必须设置在 /alidata/www 目录下,设置为其他路径则需要自行修改 httpd.conf 文件中的网站目录。 如果在上图第3步使用的是80端口,则需输入以下命令,如果输入为其他端口号则跳过此步骤

 cd /alidata/vhosts/ 
 mv default.conf default.conf.bak 

最后将网站文件(不带目录)通过 ftp 上传至 /alidata/www/网站文件夹( vhost 创建时指定的网站目录文件夹)后,访问 http://IPhttp://IP:端口号 则能够访问到自己的站点。

域名站点部署:

命令:

 cd /alidata/init 
 ./vhost.sh 

最后将网站文件(不带目录)通过 ftp 上传至 /alidata/www/网站文件夹( vhost 创建时指定的网站目录文件夹)后,访问 http://域名 或 http://域名:端口号 则能够访问到自己的站点。

教程二:将网站迁移至数据盘

用镜像生成系统后,网站的数据目录都默认在系统盘的 /alidata/www 目录下。如果您的应用数据量较大,系统盘默认的 40G 大小可能不够用,就需要我们将网站迁移至数据盘中:

方法1【脚本一键迁移】:

注:此方法会将用户数据迁移至第一块数据盘,且会清空数据盘中所有数据,适合数据盘为新购买未存放任何数据的情况;如此数据盘存放有重要数据,切勿使用此方式。有存放数据或使用高效云盘 /SSD 云盘的用户,请参考“方法二”。

若用户在数据盘有数据的情况下,执行此脚本而导致数据丢失,责任需自行承担,请务必做好数据备份,谨慎操作。

命令:

 cd /alidata/init                #进入到脚本存放目录 
 ./migration.sh                    #执行迁移脚本

提示图片上内容表示迁移成功,迁移完后网站路径在 /data1/www 下

方法2【手动迁移】:

1.首先分区并格式化数据盘。如果数据盘已格式化完成,请跳过此步骤。

2.以镜像中默认站点的 default 目录下的网站文件(默认站点仅有 index.php 一个首页文件)迁移为例,站点迁移操作步骤如下:

 /etc/init.d/httpd stop                #首先停止nginx服务
  cd  /                               #进入根目录下
 mount /dev/xvdb1  /mnt/          #将第一块数据盘挂载至mnt目录下,也可以根据您自己的需要,挂载至其他目录下。
 mkdir -p /mnt/www  /mnt/log
 cp -a /alidata/www/default/  mnt/www/  #将数据迁移至数据盘中

3、修改 default 对应的虚拟主机配置文件。

 vim /alidata/vhosts/default.conf 

将“DocumentRoot /alidata/www/default”更改为“DocumentRoot /mnt/www/default” 将然后将:ErrorLog "/alidata/log/httpd/default-error.log" CustomLog "/alidata/log/httpd/default.log" common
更改为:ErrorLog "/mnt/log/default-error.log" CustomLog "/mnt/log/default.log" common
4、启动 apache 完成迁移:

/etc/init.d/httpd start

教程三:将 mysql 迁移至数据盘中

镜像部署的 mysql 的安装目录及数据目录都存放在系统盘中,同样考虑到系统盘空间可能不够用的情况,如果 mysql 数据量很大,这里就需要我们将 mysql 迁移至数据盘中。

mysql 迁移至数据盘中,一般指将 mysql 的数据目录迁移至数据盘中。具体操作步骤如下:

1.首先格式化磁盘,并将数据盘挂载在 mnt 目录下(根据您自己的需求,也可以挂载在其他目录下)

mkdir -p /mnt/data

2.用 mysqldump 命令导出 mysql 数据,命令参考如下:

mysqldump -p --all-databases > all.sql

3.停止 mysql :

/etc/init.d/mysqld stop

4.修改 mysql 服务的状态控制脚本 /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 指定的迁移目录,即 mysql 迁移后的数据目录。

6.启动 mysql,然后将数据还原至新的数据盘中,操作步骤如下:

 /etc/init.d/mysqld start
 mysql <  all.sql  
 /etc/init.d/mysqld restart

如果您的mysql数据库开启了远程连接,若执行mysql < all.sql命令报错,您可使用以下命令操作:

 mysql -uroot -p密码 -h 公网IP < all.sql;
 /etc/init.d/mysqld restart