Centos7以上版本搭建Apache+PHP+Mysql+PhpMyAdmin环境作为一家创业公司,盼客科技在开发Y米App(一个撩妹纸的App)的时候,跟大多数创业团队一样,选择了阿里云作为公司网站和App的服务端。当时最新版的CentOS是7.2,我们毫不犹豫地选择这个最新的版本。但是对于一个新手来说,在阿里云上遇到了很多坑,完全按照阿里云上的帮助和使用说明,基本上是跑不起来的,特别是最后的两个步骤,是很多技术文章都没提到过的。废话少说,直接来实操的:一、购买阿里云ECS服务根据自己的产品对CPU、带宽、内存等硬件配置的要求,选择对应的配置,调试期间我们一般选择1核1G1M,默认选择40G云盘。这样一个月也就几十块的服务端成本。产品上线后,我们再根据用户导入规模,初期选择了4核8G10M的配置。二、准备安装调试环境的工具Xshell5比阿里云自己提供的Web命令行工具方便太多了。而Xftp5又是Xshell5的最佳搭档,在Xshell5中配置好阿里云分配的IP地址和账号密码后,能够快速通过Xftp5管理阿里云服务器上的配置文件和数据,包括后期用到的PhpMyAdmin,也会经常用到Xftp5。三、检查系统环境1、检查是否安装过Apacherpm-qa|grephttpd或者:apachectl-v或者:httpd-v3、检查是否安装过Mysqlservicemysqldstart如果没有安装,请按照下面的步骤安装上这些软件,四、安装Apache、PHP、Mysql1、安装apache[root@localhost~]#yum-yinstallhttpd安装提示如下:Installed:httpd.x86_640:2.4.6-40.el7.centos.4DependencyInstalled:apr.x86_640:1.4.8-3.el7apr-util.x86_640:1.5.2-6.el7httpd-tools.x86_640:2.4.6-40.el7.centos.4mailcap.noarch0:2.1.41-2.el7Complete!此时的提示即表示Apache安装成功了!2、安装PHP[root@localhost~]#yum-yinstallphp安装提示如下:Installed:php.x86_640:5.4.16-36.3.el7_2DependencyInstalled:libzip.x86_640:0.10.1-8.el7php-cli.x86_640:5.4.16-36.3.el7_2php-common.x86_640:5.4.16-36.3.el7_2Complete!此时的提示即表示PHP安装成功了!3、安装php-fpm[root@localhost~]#yum-yinstallphp-fpm安装提示如下:Installed:php-fpm.x86_640:5.4.16-36.3.el7_2Complete!此时的提示即表示PHP-fpm安装成功了!4、安装MySql[root@localhost~]#yum-yinstallmysql安装提示如下:Installed:mariadb.x86_641:5.5.50-1.el7_2DependencyUpdated:mariadb-libs.x86_641:5.5.50-1.el7_2Complete!此时的提示即表示MySql安装成功了!7.2版本的Centos已经把mysql更名为mariadb,表示安装成功!5、安装mysql-serverCentOS7.2版本将MySQL数据库软件从默认的程序列表中移除,用mariadb代替了,CentOS7.2配置教程上,大多都是安装mariadb,因为centos7默认将mariadb视作mysql。安装mariadb[root@localhost~]#yuminstall-ymariadb安装成功!!!6、安装php-mysql[root@localhost~]#yum-yinstallphp-mysql安装提示如下:Installed:php-mysql.x86_640:5.4.16-36.3.el7_2DependencyInstalled:php-pdo.x86_640:5.4.16-36.3.el7_2Complete!此时的提示即表示php-mysql安装成功了!五、安装基本常用扩展包1、安装Apache扩展包yum-yinstallhttpd-manualmod_sslmod_perlmod_auth_mysql2、安装PHP扩展包yum-yinstallphp-gdphp-xmlphp-mbstringphp-ldapphp-pearphp-xmlrpcphp-devel3、安装Mysql扩展包yum-yinstallmysql-connector-odbcmysql-devellibdbi-dbd-mysql六、配置Apache、mysql开机启动重启Apache、mysql服务(注意这里和centos6有区别,Cenots7+不能使用6的方式)systemctlstarthttpd.service#启动apachesystemctlstophttpd.service#停止apachesystemctlrestarthttpd.service#重启apachesystemctlenablehttpd.service#设置apache开机启动mariadb,安装完成以后使用下面的命令开启数据库服务:#启动MariaDB[root@localhost~]#systemctlstartmariadb.service#停止MariaDB[root@localhost~]#systemctlstopmariadb.service#重启MariaDB[root@localhost~]#systemctlrestartmariadb.service#设置开机启动[root@localhost~]#systemctlenablemariadb.service重启Apache服务servicehttpdrestart七、配置Mysql(MariaDB)初次安装mysql是没有密码的,我们要设置密码,mysql的默认账户为root设置MySQL数据root账户的密码:[root@localhost~]#mysql_secure_installation当出现如下提示时候直接按回车:Entercurrentpasswordforroot出现如下再次回车:Setrootpassword?[Y/n]出现如下提示输入你需要设置的密码,这里输入了root,输入密码是不显示的,回车后再输入一次确认:Newpassword:接下来还会有四个确认,分别是:Removeanonymoususers?[Y/n]Disallowrootloginremotely?[Y/n]Removetestdatabaseandaccesstoit?[Y/n]Reloadprivilegetablesnow?[Y/n]八、配置阿里云环境配置过程看上去都配好了,很多初学者会发现,配置好的Web欢迎页面打不开,很多文章都提到如下三种解决方案:1停止防火墙服务[root@mycentosshell]#systemctlstopfirewalld.service2/etc/init.d/iptablesstop关闭防火墙3开放端口iptables-AINPUT-ptcp--dport22-jACCEPTiptables-AOUTPUT-ptcp--sport22-jACCEPTiptables-AINPUT-ptcp--dport80-mstate--stateNEW,ESTABLISHED-jACCEPTiptables-AOUTPUT-ptcp--sport80-mstate--stateNEW,ESTABLISHED-jACCEPT即使上述方案都OK了,但是仍然网页仍然打不开,在Y米App服务器配置过程中,我们发现根源在于阿里云ECS的实例中的安全组规则,默认设置了很多访问的权限限制。通过修改“入方向”和”出方向”的授权策略(允许)、协议类型(全部)、端口范围(-1/-1)、授权对象(0.0.0.0/0)后,欢迎页面就能打开了。九、安装PhpMyAdminyuminstallphpmyadminphp-mcryptphpMyAdmin的默认安装目录是/usr/share/phpMyAdmin,你如果觉得配置数据库很繁琐,可以用Xftp5直接把这个文件夹移到你的Web/Html目录下,开启正常的数据库配置和访问。