CentOS7下Apache+PHP+MySQL环境(LAMP)的安装

编程

Step 1:更换阿里云 yum 源

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

yum update

Step 2:Apache 部分

安装Apache:yum -y install httpd

启动Apache服务:systemctl start httpd

检查Apache服务状态是否running:systemctl status httpd

设置Apache服务自启动守卫:systemctl enable httpd

此时,访问服务器的80端口,应可以看到Apache的默认页。如果不能访问,请检查防火墙设置。

Apache的默认网页资源目录是/var/www/html,默认配置文件位置是/etc/httpd/conf/httpd.conf

Step 3:MySQL 5.7 部分

安装MySQL及服务器:由于需要下载文件,请在合适的目录下执行下列操作。若系统没有wget,请先yum install wget安装之。

wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

yum -y install mysql57-community-release-el7-10.noarch.rpm

yum -y install mysql-community-server

启动MySQL服务:systemctl start mysqld.service

检查MySQL服务是否running:systemctl status mysqld.service

设置MySQL服务自启动守卫:systemctl enable mysqld.service

获取MySQL初始随机密码: grep "password" /var/log/mysqld.log

使用该密码进入数据库:mysql -uroot -p,输入密码进入

执行查询,修改默认密码:ALTER USER "root"@"localhost" IDENTIFIED BY "[NEWPASSWORD]";

注意,依据安全性政策,过于简单的密码无法通过要求。

新增最高权限用户:实际操作中,我们不可能将root用户暴露到%域来做数据库操作,所以添加一个新用户。执行下列查询:

CREATE USER '[USERNAME]'@'%' IDENTIFIED BY '[PASSWORD]';

GRANT ALL ON *.* TO '[USERNAME]'@'%';

FLUSH PRIVILEGES;

至此,使用配置好的用户名和密码,应可以使用Navicat连接上数据库。

Step 4: PHP 7 部分

注意,直接yum安装PHP会安装5.4版本。如果不慎安装,请执行

yum remove php

yum remove php-fpm

yum remove php-common

然后reboot服务器,再进行后续安装。

为安装PHP 7,需要配置一下新的源:

yum install epel-release

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

安装PHP:yum -y install php72w

安装PHP依赖:yum -y install php72w-fpm

安装常用的PHP插件:yum -y install php72w-cli php72w-common php72w-devel php72w-mbstring php72w-mysqlnd

重启服务器和数据库,使相关插件生效:

systemctl restart httpd.service

systemctl restart mysqld.service

验证PHP版本是否为7.0+:php -v

测试PHP能否正常解释:

cd /var/www/html

vi test.php

内容为<?php phpinfo(); ?>

在浏览器访问之。若出现诊断页,则安装成功。

Step 5: 检查 MySQLi 支持

test.php中搜索mysqli,若能看到类似表格,则MySQLi支持已启动。PHP 7.2版本默认启用MySQLi。

Step 6: 安全性配置

关闭Apache的目录索引权限:访问Apache的httpd.conf文件,去除<Directory /var/www/html>OptionsIndexes属性

在正式上线时,关闭PHP错误提示:编辑php.ini,修改display_errors选项到Off。

一些在Ubuntu下需要做的但在CentOS下好像不需要了的操作(仅供参考):

MySQL的默认配置文件路径为/etc/my.cnf,其中的具体配置项目请参看https://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html

  • 取消MySQL的地址绑定(否则会导致外网无法连接数据库):[mysqld]bind_address=0.0.0.0
  • 禁止MySQL进行域名解析(否则会导致外网连接数据库极慢无比):[mysqld]下添加skip-name-resolve

  • 设置数据库默认编码UTF-8:[mysqld]下添加character_set_server=utf8init_connect="SET NAMES utf8"

Step 7: FTP 服务器

使用xShell联合xFtp即可直接连接。

Step 8: 启用HTTPS

安装SSL支持:yum install mod_ssl openssl

依据https://help.aliyun.com/knowledge_detail/95493.html的说明配置证书文件,注意:

  • 第2步若找不到对应配置项,无视该步骤
  • 第3步配置文件位置为/etc/httpd/conf.d/ssl.conf
  • 第4步所给指令不再有效,请使用systemctl restart httpd

现在,可以以域名方式https访问相应端口。

至此,LAMP环境搭建完成。后续PHP代码上传到/var/www/html目录下即可。

以上是 CentOS7下Apache+PHP+MySQL环境(LAMP)的安装 的全部内容, 来源链接: utcz.com/z/514124.html

回到顶部