前言
上一篇重新安装了CentOS8.2之后,接下来开始安装部署PHP服务器,让公网可以访问到我们部署的PHP服务器首页。
背景
为什么自行搭建,是因为红胖子专业做相关Qt软件以及终端设备研发的,遇到像摄像头和终端设备等有时需要搭建的web服务器做远程控制,索性本次一趟水了做笔记了。
PHP
学习PHP之前,具备基础的HTML和CSS基础知识。
简介
- PHP(全称:PHP:Hypertext Preprocessor,即PHP:超文本预处理器")是一种通用开源脚本语言。
- PHP脚本在服务器上执行。
- PHP可免费下载使用。
支持的功能
- PHP 可以生成动态页面内容
- PHP 可以创建、打开、读取、写入、关闭服务器上的文件
- PHP 可以收集表单数据
- PHP 可以发送和接收 cookies
- PHP 可以添加、删除、修改您的数据库中的数据
- PHP 可以限制用户访问您的网站上的一些页面
- PHP 可以加密数据
- 通过 PHP,您不再限于输出 HTML。您可以输出图像、PDF 文件,甚至 Flash 电影。您还可以输出任意的文本,比如 XHTML 和 XML。
特点
- PHP 可在不同的平台上运行(Windows、Linux、Unix、Mac OS X 等)
- PHP 与目前几乎所有的正在被使用的服务器相兼容(Apache、IIS 等)
- PHP 提供了广泛的数据库支持
- PHP 是免费的,可从官方的 PHP 资源下载它:www.php.net
- PHP 易于学习,并可高效地运行在服务器端
安装部署PHP服务器
步骤一:yum安装apache
sudo yum install httpd
查看安装的最新版本:
步骤二:配置apache服务器
配置ServerName,修改ServerName为localhost
sudo vim /etc/httpd/conf/httpd.conf
重新后,检查是否开机启动httpd服务(区别于apache网站服务器):
步骤三:配置apache服务开机启动网站服务
检查是否运行服务:
systemctl status httpd.service
没有运行服务,需要启动服务,开启apache服务
systemctl start httpd.service
apache服务开机启动
systemctl enable httpd.service
确认已是开机启动,再次查看状态:
systemctl status httpd.service
然后,重启后,再次查看确认:
sudo reboot systemctl status httpd.service
如下图,开机启动成功:
步骤四:yum安装php
没有选择版本,在命令安装的可以看到:
sudo yum install php php-devel php-pdo php-gd php-mbstring php-mysqlnd php-ldap php-json php-xml php-zip
php7.2.24版本,我们可以使用,输入y继续安装。
检查php版本:
检查php运行状态:
systemctl status php-fpm.service
老规矩,为了保险,重启再测一次:
步骤五:安装mysql
sudo yum install mysql mysql-server
步骤六:启动mysql服务初始化修改密码
安装完后,是没有启动服务的,先启动服务:
systemctl start mysqld.service
然后设置root的密码:
mysqladmin -u root password 123456
使用密码登陆:
mysql -u root -p
然后,修改密码,不同版本修改密码内部不同,但是外面一样:
mysqladmin -u root -p 123456 password 新密码
使用密码测试:
mysql -u root -p
网页服务器根目录
(注意:后续修改未403无权限,尝试未解决后,退回来原来的目录,具体查看“入坑一”,需要修改目录的可继续,若有问题实在解决不了再回退,copy就行)。
修改万维网的根服务器目录:
sudo vim /etc/httpd/conf/httpd.conf
修改为/home/yang/work/www
重启一次服务:
systemctl restart httpd.service
直接重启服务器了,也还是不行。然后修改回去又可以,怀疑是需要多修改几个目录:
还是不行,看日志为权限,检查文件夹,www文件夹忘记创建了,继续重启,重启成功了:
systemctl restart httpd.service
网页服务
查看配置:
第一个网页:
修改回原来的路径:
然后复制文件过去:
公网登陆服务器:
入坑
入坑一:登陆403错误
问题
尝试解决
关闭防火墙测试:不行。
打开根目录权限:不行。
修改权限775:不行。
解决方法
退回原来的路径就行了,方法试了不少,最终都没解决。