ECS云服务器快速部署开发环境(apache + mysql + php)

本文详细介绍了如何在ECS服务器上部署Apache、MySQL和PHP,包括设置端口、安装步骤、遇到的问题如端口冲突、MySQL连接错误的解决方案,以及可选的创建环境副本方法。
摘要由CSDN通过智能技术生成

目录

步骤

部署可能遇到的问题

创建环境副本(可选)


步骤

  1. 在购买ECS服务器后,系统创建一个ECS实例后,重置实例密码
  2. 单击实例的ID,选择安全组页签,单击安全组操作列的配置规则,在入方向添加需要放行的端口。本教程中,在安全组入方向放行SSH默认22端口、Apache默认80端口。
  3. 远程连接ECS实例
  4. 安装Apache服务
  • 安装命令:httpd -k install -n Apache2.4           // -n 后面表示自定义访问名称
  • 执行命令启动Apache并设置自启动:systemctl start httpdsystemctl enable httpd
  • 查看Apache运行状态:systemctl status httpd
  • 如果回显信息显示active(running)时,表示Apache已启动。
  • 在本地电脑浏览器中输入http://<ECS服务器的公网IP>,测试Apache服务是否安装成功。如果有测试页面,表示Apache服务已安装成功。ECS服务器的弹性公网IP可以从ECS实例页面获取

        5. 安装MySQL:

  • 安装命令:wget http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm &&yum -y install mysql57-community-release-el7-10.noarch.rpm &&yum install -y mysql-community-server --nogpgcheck
  • 执行命令,启动MySQL数据库:systemctl start mysqld.service
  • 执行以下命令,查看MySQL初始密码:grep "password" /var/log/mysqld.log
  • 执行以下命令,登录数据库:mysql -uroot -p
  • 执行以下命令,修改MySQL默认密码:

        set global validate_password_policy=0;       #修改密码安全策略为低(只校验密码长度,至少8位)

        ALTER USER 'root'@'localhost' IDENTIFIED BY 'XXXXXXXX';

  • 执行以下命令,授予root用户远程管理权限:

        GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'XXXXXXXX';

  • 输入exit退出数据库

        6. 安装PHP

  • 执行命令,安装PHP环境:yum -y install php php-mysql gd php-gd gd-devel php-xml php-common php-mbstring php-ldap php-pear php-xmlrpc php-imap
  • 在/var/www/html/index.html 创建PHP测试页面,输入代码:echo "<?php phpinfo(); ?>" > /var/www/html/phpinfo.php
  • 重启Apache服务:systemctl restart httpd
  • 打开浏览器,访问http://<ECS公网IP>/phpinfo.php,显示php版本页面表示PHP语言环境安装成功。

部署可能遇到的问题

  • Job for httpd.service failed because the control process exited with error code. See "systemctl status httpd.service" and "journalctl -xe" for details.

        原因:端口冲突,可能启动了Nginx服务占用了端口,导致Apache无法启动
        解决方法:关闭Apache或者Nginx其中一个服务即可
                用systemctl status httpd.service查看,发现80端口被占用
                用netstat -antlp | grep 80查看端口被哪一服务占用:netstat -antlp | grep 80
                关闭占用了80端口的XXX服务,再次启动:
                systemctl stop XXX.service
                systemctl start httpd

  • ​远程连接mysql报错2002:

原因:(1)权限未开;(给权限)(2)防火墙3306端口未开;(开端口)

  • Mysql启动systemctl start mysqld.service报错:Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.

       解决方法:

         ps -ef|grep mysqld查看mysqld进程详情
        有的话就:pkill -9 mysqld杀死mysqld进程
        systemctl status mysqld.service查看状态

  • 连接报错1130

        解决方法:先在my.conf内加入skip-grant-tables以便自由进入mysql命令行,然后更改权限

  • 创建环境副本(可选)

    • 环境搭建完成后,可以将配置环境通过自定义镜像制作成环境副本保存下来。
    • 登录ECS管理控制台。在ECS实例页面,单击实例ID,进入实例详情页。
    • 云盘--->填写快照名称,然后单击创建。
    • 在快照页面,等待快照创建完成,然后单击创建自定义镜像。
  • 47
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值