前言

  上一篇重新安装了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:不行。
  

解决方法

  退回原来的路径就行了,方法试了不少,最终都没解决。

  

公司官网建站笔记(二):在云服务器部署PHP服务(公网访问首页)的更多相关文章

  1. 公司官网建站笔记(一):腾讯云服务器装CentOS8.2系统、重置密码、远程ssh登陆、sftp传递文件以及新建开发者账户

    前言   本篇使用的是腾讯云服务器,讲解了部署安装服务器CentOS8.2系统,重置密码,添加用户,远程登陆,远程传递文件等基本流程.   前提条件   购买了腾讯云服务器,如下图:     云服务器 ...

  2. 【Bootstrap3.0建站笔记二】button可下拉弹出层

    1.button可下拉弹出层: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2hpbmFwbGFu/font/5a6L5L2T/fontsize/400 ...

  3. 阅读Protobuf官网的一些笔记

    阅读 Protobuf 官网的一些笔记 Protobuf API(The Protocol Buffer API) 每个字段都会有基本的 set_ get_ 方法 string类型的字段可以使用 mu ...

  4. 阿里云服务器 - node启动服务的时候只有监听内网IP才可以供外网访问

    阿里云服务器 - node启动服务的时候只有监听内网IP才可以供外网访问

  5. 如何从sun公司官网下载java API文档(转载)

    相信很多同人和我一样,想去官网下载一份纯英文的java API文档,可使sun公司的网站让我实在很头疼,很乱,全是英文!所以就在网上下载了别人提供的下载!可是还是不甘心!其实多去看看这些英文的技术网站 ...

  6. 建站笔记1:centos6.5下安装mysql

    近期买了个域名,想要玩玩自己建站点:接下来遇到的问题都会一次记录下来.以备自己以后复习查看: 首先建站方案选择: wordPress +centos6.5 +mysql; server买的:搬瓦工最低 ...

  7. Github建站笔记

    下载Git 搜索"Git",在官网中根据系统版本下载,并双击打开,按默认已勾选组件点下一步; 勾选在Windows命令行窗口中使用Git: 使用推荐的OpenSSL库用于HTTPS ...

  8. 后端——框架——容器框架——spring_core——《官网》阅读笔记——初篇

    1.知识体系 spring-core的知识点大概分为以下几个部分 IOC容器 Bean的配置,XML方式和注解方式 Bean的管理,bean的生命周期,bean的作用域等等 与Bean相关联的接口和对 ...

  9. 利用raspberry pi搭建typecho笔记(二) sqlite和typecho部署

    sqlite概述 typecho可以支持MYSQL和Sqlite两种数据库,因为Sqlite更为轻量,并且不需要额外的进程,而是直接对数据库文件进行读取,所以配置相对于MySQL也更为简单,仅需指定数 ...

  10. Linux小项目/rhel-基于同步官网yum仓库数据搭建本地yum服务器

    本文的实验环境:aws上的Redhat 7.x , 同样也适用于Centos 7.x 简单说主要分为三步: (1) 向官网同步yum数据,可以根据具体情况,创建脚本及配置周期例行任务  (2) 搭建w ...

随机推荐

  1. [转帖]CPU缓存行

    https://www.jianshu.com/p/e338b550850f CPU缓存 执行程序是靠运行CPU执行主存中代码,但是CPU和主存的速度差异是非常大的,为了降低这种差距,在架构中使用了C ...

  2. 查找linux下面某目录下重名出现的文件以及次数

    find . -name '*.data' -exec basename {} \;| sort | uniq -w32 --all-repeated=separate | uniq -c | sor ...

  3. 手工创建一个带sticky模块的nginx镜像 并且实现容器化负载均衡的方法

    最近想进行容器化运行的nginx反向代理负载均衡服务. 找了一下 dockerhub上面的 nginx 发现里面不包含 sticky模块. 会报错为: nginx: [emerg] unknown d ...

  4. kubernetes中不可见的OOM

    最近看了一篇文章:Tracking Down "Invisible" OOM Kills in Kubernetes,其讲述的是由于内存不足导致Pod中的进程被killed,但Po ...

  5. Object.defineProperty熬夜整理的用法,保证你看的明白!

    Object.defineProperty的基本使用 <script> let personObj={ name:'何西亚', sex:'男' } //我们想给这个对象添加一个属性 // ...

  6. 【发现一个问题】extjs-gpl-7.0: 当修改 store 对象的字段后,再次 loadPage() 后字段映射错误。

    作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢! cnblogs博客 zhihu Github 公众号:一本正经的瞎扯 因为查询中需要每次返回数目不确定的 fields ,这就需 ...

  7. 一个神奇的golang技巧:扩大heap内存来降低gc频率

    作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢! cnblogs博客 zhihu 公众号:一本正经的瞎扯 具体的文章请看:https://web.archive.org/web/ ...

  8. 【JS 逆向百例】PEDATA 加密资讯以及 zlib.gunzipSync() 的应用

    关注微信公众号:K哥爬虫,持续分享爬虫进阶.JS/安卓逆向等技术干货! 声明 本文章中所有内容仅供学习交流,抓包内容.敏感网址.数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后 ...

  9. Django笔记七之ManyToMany和OneToOne介绍

    本文首发于本人微信公众号:Hunter后端 原文链接:Django笔记七之ManyToMany和OneToOne介绍 ManyToMany 是一种多对多的关系,在用途和使用方法上和外键 Foreign ...

  10. net8来了

    11 月 15 日开始的为期三天的 .NET Conf 在线活动的开幕日上,.NET 8作为微软的开源跨平台开发平台正式发布..NET 团队着重强调云.性能.全栈 Blazor.AI 和 .NET M ...