PHP学习笔记

一.准备环境

下载Apache
和PHP
安装mysql
特殊IP:127.0.0.1 代表本机
特殊域名:localhost
参考教程
静态网页工作原理
在这里插入图片描述
动态网页工作原理
在这里插入图片描述

二.安装Apache

我是在这里下载的

解压后把Apache24文件,放到了F:\server\Apache24
在这里插入图片描述

在这里插入图片描述

然后参考这个文章参考第二部分

修改配置文件
在这里插入图片描述

不修改httpd.conf 文件,启动Apache会遇到
httpd.exe: Syntax error on line 40 of F: /server/Apache24/conf/httpd.conf:ServerRoot must be a valid directory 这个报错
监听端口不改可能也会报错
电脑80端口一直被占用可以换个端口
在这里插入图片描述

添加环境变量

在这里插入图片描述
安装服务
在这里插入图片描述
遇到80端口被占用
在这里插入图片描述
管理员CMD找
netstat -aon|findstr “80”
在这里插入图片描述
在任务管理器中关闭pid是151252的进程再重启apache即可

在这里插入图片描述
启动成功
查看使用模块
在这里插入图片描述
验证配置
在这里插入图片描述
在这里插入图片描述

三.安装PHP

在这下载php
下载解压后改名PHP7
在这里插入图片描述

添加环境变量

在这里插入图片描述
将 PHP 目录下的php.ini-development,复制一份并重命名为 php.ini
在这里插入图片描述
编辑php.ini文件:

设置PHP扩展包的具体目录

找到:在这里插入图片描述
改为
在这里插入图片描述
在这里插入图片描述

配置 apache 支持 php

在httpd.conf文件的#LoadModule写入
在这里插入图片描述
找到
在这里插入图片描述
改为
在这里插入图片描述

加载成功
在这里插入图片描述

四.安装Mysql

在这里下载

参考安装
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
遇到问题
在这里插入图片描述

执行安装在这里插入图片描述

下一步
在这里插入图片描述

执行,下一步
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
mysql的默认端口是3306,一般情况下不需要修改,其他配置也不需要修改,直接下一步
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
执行后全打勾点完成 下一步
在这里插入图片描述
最后finish
打开
在这里插入图片描述
输入密码

在这里插入图片描述
成功了

配置环境

在这里插入图片描述
打开cmd输入mysql -u root -p和密码
在这里插入图片描述
成功了

在这里插入图片描述

在这里插入图片描述
软件设计结构: C/S 和B/S
C/S: Client 客户端/Server服务端,用户需要安装客户端产品才能访问服务器,而且只能访问一种软件(当前自己)。
B/S: Browser浏览器/Server服务端,用户只需要安装浏览器,就可以访问所有的服务器(B/S架构服务)

MySQL的访问流程

Mysql是一款c/s架构的软件,需要通过客户端来访问服务端(MySQL也提供其他模式的访问:通过一些插件扩展来充当客户端)

1、启动MySQL客户端:mysql.exe,该软件本身可以通过CMD控制台运行,
本身客户端:mysql.exe
在这里插入图片描述
通过CMD运行
在这里插入图片描述

2、MySQL 客户端访问服务端需要进行寻找匹配:连接认证
连接: IP 和端口确认,如果是本地都可以省略。
-h主机地址----》-hlocalhost (可以是IP)
-P端口—》-P33064
认证:通过用户名和密码进入服务器。
-u用户名—》-uroot,不可以省略(匿名用户除外)
-p密码—》-p123456
一次性输入(不安全明文)
mysql -hlocalhost -P3306 -uroot -p123456
先不输入密码
mysql -hlocalhost -P3306 -uroot -p
*******
在这里插入图片描述

php连接mysql

PHP连接MySQL数据库

PHP本身不具备操作MySQL数据库的能力,需要借助PHP操作MySQL的扩展来实现。

PHP 加载MySQL扩展: php.ini 文件中。

PHP 5 及以上版本建议使用以下方式连接 MySQL :

MySQLi extension (“i” 意为 improved)

打开php.ini 删掉extension=mysqli前面的分号;
在这里插入图片描述
扩展目录前面已经设置过了
在这里插入图片描述
保存后记得重启apache才能生效
在这里插入图片描述

修改测试代码
在这里插入图片描述

访问localhost/index.php 下翻找到mysqli 成功
在这里插入图片描述
测试连接
在这里插入图片描述
成功
在这里插入图片描述

五虚拟主机

虚拟主机不是虚拟机 两者存在根本性的区别。

虚拟主机是从服务器上划分出来的“虚拟空间”;通俗的讲,虚拟主机就是将计算机中不同的文件夹进行不同的命名,然后可以实现让服务器(Apache)根据用户的需求从不同的文件夹(网站)中读取不同的内容。。

而虚拟机则是一种系统软件。 而虚拟机是通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。

一台服务器很贵,如果只能部署一个网站,那么非常浪费。所以需要通过其他渠道来实现一台主机上部署多个网站。。

虛拟主机的分类

在Apache中,可以将虚拟主机划分成两类:。
1、 基于IP的虚拟主机:一台电脑上有多个IP,每个IP对应一个网站。
原理:电脑默认只有一个IP,因为通常只配有一个网卡;但是有的电脑(服务器居多)可以配置多个网卡,每个网卡可以绑定一个IP地址。

2、基于域名的虚拟主机: -一台电脑上只有一个IP,但是IP下可以制作多个网站,但是需要给每个网站不同的名字( 虚拟主机名)。

搭建基于域名的虚拟主机

在Apache中,虚拟主机的搭建有两种方式:
1、 在主配置文件中搭建:需要手动开启虚拟主机(基于域名)。
NameVirtualHost *:80

2、在专门的虚拟主机配置文件中配置。这里采用这一种
2.1在主配置文件中加载虚拟主机配置文件:虚拟主机配置文件已经开启了虚拟主机
NameVirtualHosto
2.2虚拟主机配置文件中配置虚拟主机。

在这里插入图片描述

删掉前面的分号;
在这里插入图片描述
打开文件
在这里插入图片描述

拉到最下面有注释掉的例子
在这里插入图片描述
在例子后面添加
①增加一个对应站点的文件夹位置
②虚拟机主机名(域名是不区分大小写的 比如我其中写的F,浏览器搜索的时候自动会变成f)

在这里插入图片描述
找到C盘这个文件
在这里插入图片描述

③增加域名解析DNS:hosts
这个可能需要管理员权限修改,注意看修改成功没
在这里插入图片描述
④需要给当前设定的站点(目录)访间权限。
在Directory标签中设置

⑤配置访问列表:当访问是一一个目录时候(没有指定具体要访问的文件)。
Options Indexes [FollowsSymlLinks],如果访问目录,那么列表显示所有文件。 再Linux下中括号[]不能省略

⑥当用户访问指定目录不指定文件的时候,通常需要系统指定一个默认文件。
DirectoryIndex 默认的文件列表,使用空格分离。
新代码参考
在这里插入图片描述
注意:一旦启用虚拟主机配置文件,那么默认的主机地址localhost 就不再生效,如果想要生效:为localhost增加单独的虚拟主机。
在这里插入图片描述

建立虚拟主机文件,和测试主页
在这里插入图片描述

重启apache,用浏览器域名访问

在这里插入图片描述

相关推荐

  1. PHP学习笔记1

    2024-03-11 01:10:02       27 阅读
  2. PHP学习笔记

    2024-03-11 01:10:02       17 阅读
  3. PHP学习笔记

    2024-03-11 01:10:02       10 阅读
  4. php学习笔记

    2024-03-11 01:10:02       6 阅读
  5. <span style='color:red;'>PHP</span><span style='color:red;'>笔记</span>

    PHP笔记

    2024-03-11 01:10:02      13 阅读
  6. <span style='color:red;'>php</span><span style='color:red;'>学习</span>

    php学习

    2024-03-11 01:10:02      30 阅读
  7. <span style='color:red;'>PHP</span><span style='color:red;'>学习</span>

    PHP学习

    2024-03-11 01:10:02      41 阅读
  8. pip学习笔记】Python包管理器 - pip

    2024-03-11 01:10:02       20 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-11 01:10:02       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-11 01:10:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-11 01:10:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-11 01:10:02       20 阅读

热门阅读

  1. C++基础入门 --- 【学习指南】

    2024-03-11 01:10:02       18 阅读
  2. 喜马拉雅后端一面

    2024-03-11 01:10:02       24 阅读
  3. Spring Boot 部署在Windows

    2024-03-11 01:10:02       25 阅读
  4. [three.js]UV动画

    2024-03-11 01:10:02       25 阅读
  5. 【IC设计】Scala、Chisel、Chiseltest版本兼容信息

    2024-03-11 01:10:02       21 阅读
  6. iOS面试题

    2024-03-11 01:10:02       26 阅读