CentOS 配置 LAMP 环境

系统信息

>>>lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 8.2.2004 (Core)
Release: 8.2.2004
Codename: Core

Step1 安装配置 httpd

>>>yum install httpd -y
...省略安装过程
>>>httpd -k start
>>>httpd -V
Server version: Apache/2.4.37 (centos)
Server built: Nov 12 2021 04:57:27

服务器放行 80 端口,管理面板策略组放行 80/0.0.0.0(允许外网访问),然后访问公网 ip 查看是否成功。

编辑配置 httpd 配置文件:/etc/httpd/conf/httpd.conf/

L100: ServerName 127.0.0.1 # 取消注释,添加服务器名称
L169: DirectoryIndex index.html index.php # 添加PHP的主页

编辑配置 httpd 虚拟站点文件:/etc/httpd/conf.modules.d/vhost.conf(可以任意名字,有辨识度即可):

<VirtualHost *:80>
# 监听服务器80端口
ServerAdmin ssxx.site@qq.com
# 服务器管理者邮箱
DocumentRoot "/var/www/html"
# 当前站点地址(单IP多站点修改此项)
ServerName www.ssxx.site
# 当前站点访问URL,记得解析二级域名(单IP多站点修改此项)
ServerAlias RootWeb
# 当前站点别名,无特殊要求
ErrorLog "logs/www-ssxx-site.log"
CustomLog "logs/www-ssxx-site.log" common
# 日志路径
RewriteEngine on
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*) https://%{SERVER_NAME}$1 [L,R]
# 自动跳转https,如果不开ssl可以不写
</VirtualHost>

启用 ssl 支持 https 访问,继续编辑vhost.conf

<VirtualHost *:443>
# 监听443端口,记得在httpd.conf里写Listen 443或者启用ssl.conf
ServerAdmin ssxx.site@qq.com
DocumentRoot "/var/www/html"
ServerName www.ssxx.site
ServerAlias RootWeb
ErrorLog "logs/www-ssxx-site.log"
CustomLog "logs/www-ssxx-site.log" common
# 同上

SSLEngine on
# 启用SSL
SSLCertificateFile "/etc/httpd/cert.cer"
SSLCertificateKeyFile "/etc/httpd/cert.key"
# 证书文件路径,我这里用的是PEM标准证书
</VirtualHost>

安装配置 PHP

CentOS 默认 PHP 版本为 7.2,如果想用更高版本可以参考我以前的博文进行编译安装,但请注意添加对 apache 的支持(请自行搜索解决)

>>>yum install php php-fpm -y
>>>systemctl start php-fpm
安装完成后检索
>>>php -V
PHP 7.2.24 (cli) (built: Oct 22 2019 08:28:36) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
证明安装成果,然后安装常见拓展,注意mysql的拓展已经改名了
>>>yum install php-mysqlnd php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc

然后关联 apache,一般来说会自动生成配置文件在/etc/httpd/conf.modules.d/15-php.conf,只需重载 httpd 即可httpd -k restart;如果没有的话可以手动在httpd.conf文件里面关联 PHP 模块

LoadModule php7_module modules/libphp7.so
AddType application/x-httpd-php .php .phtml
Addtype application/x-httpd-php-source .phps

使用echo <?php phpinfo();?> > /var/www/html/index.php然后访问站点进行测试

安装配置 SQL

这里使用 mariadb 数据库

>>>yum install mariadb mariadb-server -y
安装成功启动后测试
>>>mysql -V
mysql Ver 15.1 Distrib 10.3.28-MariaDB, for Linux (x86_64) using readline 5.1
然后配置mariadb
>>>mysql_secure_installation
Enter current password for root (enter for none): # 输入当前root账号密码,刚安装默认为空,直接回车即可
Set root password? [Y/n] # 是否输入root密码,输入y 回车
New password: # 输入密码
Re-enter new password: # 重复输入
Remove anonymous users? [Y/n] # 删除其他用户 y
Disallow root login remotely? [Y/n] # 允许root账号远程登录 y
Remove test database and access to it? [Y/n] # 删除测试表 y
Reload privilege tables now? [Y/n] # 重新加载配置表 y
配置完之后登录测试
>>>mysql -u root -p
Enter password: # 输入密码访问