PHP
PHP
视频链接:https://www.bilibili.com/video/BV1ys411P7HX?p=6
认识互联网
互联网实际访问
互联网访问定义:互联网中的网站访问,本质是一个互联网上有一台已知的服务器,然后用户知道服务器对应的名字(UPL),然后通过URL,再经过互联网协议(HTTP协议)去自动寻找,并且服务器提供数据,浏览器解析数据的过程。
互联网基本知识
-
所有计算机在互联网*问到的内容都是由相应服务器提供资源
-
服务器的本质不是硬件,二十装有服务器软件的计算机
装有服务器软件就可以对外提供对应服务
一台计算机可以安装多种服务软件
-
所有计算机在互联网上都有一个唯一的标识代表自己:IP
IPV4是由32个比特位组成,转换成10进制分成四段,如112.90.32.8
IPV6是由128个比特位组成,转换成16进制分成8段,如31da:1d3:0:2f3b:2aa:ff:fe28:9c5a
特殊IP:127.0.0.1代表本机电脑
-
任何软件都有属于自己的对外交流的入口:端口(port),而任何客户机尝试访问服务器都需要指定访问的端口(常用的有默认)
web服务器常用端口:80
telnet远程登陆端口:23
FTP服务器常用端口:21
mysql数据库服务器常用端口:3306
-
IP能够找到电脑,但是用户记不住,所以需要给IP设定一个别名方便用户记住,这种别名叫做域名(domain name)
域名存在纯粹是为了方便用户记住:www.baidu.com
域名可以分为*、一级域名(.com/.cn/.org/edu),二级域名(baidu.comA),三级域名(www.baidu.com)以此类推 -
域名是人为的不具有唯一性,要找到服务器只能通过ip,所以计算机需要将用户输入的域名转换成对应的ip地址才能找到服务器,这个过程叫做域名解析,提供该服务的系统叫域名系统DNS(Domain Name System)
提供服务的产品公司将域名和服务器IP维护到DNS上(收费)
本地域名解析,可以使用计算机自带的本地域名系统hosts文件(c:\windows\System32\drivers\etc\hosts)
互联网真实访问流程
互联网的访问站在用户的角度操作简便,但是站在一个网站的角度,需要提供硬件、软件和协议的各种支持,最终才能实现数据库的用户共享
服务器区分
域控服务器:用于内网,主要用于类似一个公司内部资源的管理的服务器
文件服务器:主要进行文件管理
web服务器:提供web服务,人们可以通过浏览器访问提供的资源。一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,可以向浏览器等web客户端提供文档,也可以放置网站文件,让全世界浏览;可以放置数据文件,让全世界下载。目前最主流的三个web服务器是apache、nginx、iis。服务器使用HTTP(超文本传输协议)与客户机浏览器进行信息交流,这就是人们常把它们称为HTTP服务器的原因
FTP服务器:用于文件上传,对硬盘资源要求高
邮件服务器:与FTP类似
数据库服务器:性能要求相对较高,数据库要提供大量数据的分析、管理等等
VoD服务器:类似优酷一类的,使用的就是VoD服务器,对于流量、内存、网络要求较高
web发展历史
经历了两个阶段,俗称web1.0和web2.0,站在开发者的角度来说就是静态网站和动态网站
web1.0(信息共享):web技术发展的第一个解读眼就是静态技术阶段,HTML语言就是web向用户展示信息的最有效载体。在这个阶段,是以编辑为特征,网站提供给用户的内容是网站编辑处理后的,用户阅读网站提供的内容,这个过程是网站向用户的意向行为。
web2.0(信息共建):web技术发展的第二个解读眼就是动态技术阶段,在web1.0时代,web服务器会返回整个页面或者文档,但随着动态脚本语言的出现(ASP、JSP、PHP),使得用户可以在获取信息的同时还能提供信息,并且可以将提供的信息分享给其他用户。在这个阶段加强了网站与用户之间的互动,网站内容基于用户提供,网站的诸多功能也由用户参与建设,实现了网站与用户的双向互动交流,web2.0不同于web1.0的最大之处在于它的互动性,用户拥有自己的数据,并完全基于WEB,所有功能都能通过浏览器完成。
认识PHP
PHP是一种编程语言,是一种建立了动态网站的脚本语言。
是一种运行在服务器端,可以嵌入到HTML的脚本/编程语言。
PHP的历史
安装部分基本参考(https://blog.csdn.net/weixin_36466834/article/details/105483903)
安装Apache
官网下载地址:http://httpd.apache.org/download.cgi
点击Files for Microsoft Windows
点击ApacheHaus
下个x64的版本就行
解压后找到conf目录,打开里面的httpd.conf文件
将里面的DocumentRoot改成存放网页的文件夹,Define SRVROOT 后面的修改为自己的安装目录后,保存。
担心会提示端口占用所以顺便把端口改为8081
以管理员身份运行命令行界面,进入安装目录下的bin目录,输入:httpd.exe -k install -n “Apache24”
双击 Apache24\bin目录下的ApacheMonitor.exe,来管理apache运行状态。运行后,任务栏会出现ApacheMonitor.exe的小图标,左键点击该图标,选择Apache24->Start/Stop/Restart。通过ApacheMonitor.exe来管理Apache的状态。
安装PHP
1、PHP官网链接:https://www.php.net/
或者直接点击官网下载链接:https://www.php.net/downloads
点击downloads
(8.0现在是测试版所以下载7版本)点击windows downloads
下载x64 thread safe版本
解压后将目录下的php.ini-development重命名为php.ini
把php.ini复制一份到C:\Windows目录下
不然下一步测试的时候就会报错
不需要做额外配置了直接测试php.exe即可
在存放网页的文件夹下新建一个index.php,这里为D:\app\Apache\www 文件夹
<?php
echo'hello word!';
?>
php.exe -f D:\app\Apache\www\index.php
//-f代表文件命令,后面是index.php的文件路径
剩下就照搬照抄吧。做这篇文章的时候我已经全部安装完毕了
配置Apache支持PHP
在Apache安装目录下的httpd.conf里新增如下内容:
【注意:dll的路径因为存在空格,需要在dll的路径加上双引号,否则会出现报错】
#让Apache服务器引入php7模块,从而可以支持php应用的web访问
LoadModule php7_module "D:\\Program Files (x86)\\WAMP\\php-7.2.29-Win32-VC15-x64\\php7apache2_4.dll"
#告诉Apache识别php文件的后缀,从而对这些后缀的应用进行解析
AddType application/x-httpd-php .php .html .htm
#告诉Apache服务器php.ini的目录,从而使服务器读取php的配置
PHPIniDir "D:\\Program Files (x86)\\WAMP\\php-7.2.29-Win32-VC15-x64"
Apache的根目录修改:默认为安装目录下的htdocs目录。打开httpd.conf,将
DocumentRoot " "
<Directory " ">
12
这两行前的#去掉,并修改为自己想设置的目录即可。
DirectoryIndex里面新增加一个index.php
保存文件,重启Apache。
测试
在Apache根目录下新建index.php
<?php
phpinfo();
?>
在浏览器中访问 127.0.0.1 或者 localhost 或者 127.0.0.1/index.php 或者 localhost/index.php(注意,如果修改过端口号,需要访问时加上端口号,例:127.0.0.1:8080)。出现下面的页面就是配置成功了。
接下来就是mysql安装了
讲真的我一点都不情愿做这个。。。。
虽然我已经安装好了
这简直就是我挥之不去的噩梦
而且我已经安装好了为什么要在这里浪费时间。
所以我选择照搬照抄。
mysql安装
源:https://www.runoob.com/mysql/mysql-install.html
注意:安装过程我们需要通过开启管理员权限来安装,否则会由于权限不足导致无法安装。
官方安装链接:https://dev.mysql.com/downloads/mysql/
点击 Download 按钮进入下载页面,点击下图中的 No thanks, just start my download. 就可立即下载:
下载完后,我们将 zip 包解压到相应的目录,这里我将解压后的文件夹放在 C:\web\mysql-8.0.11 下。
接下来我们需要配置下 MySQL 的配置文件
打开刚刚解压的文件夹 C:\web\mysql-8.0.11 ,在该文件夹下创建 my.ini 配置文件,编辑 my.ini 配置以下基本信息:
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=C:\Program Files\MySQL\MySQL Server 8.0
# 设置mysql数据库的数据的存放目录
datadir=C:\Program Files\MySQL\MySQL Server 8.0\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4
接下来我们来启动下 MySQL 数据库:
以管理员身份打开 cmd 命令行工具,切换目录:
cd C:\web\mysql-8.0.11\bin
初始化数据库:
mysqld --initialize --console
执行完成后,会输出 root 用户的初始默认密码,如:
...
2018-04-20T02:35:05.464644Z 5 [Note] [MY-010454] [Server] A temporary password is generated for aaa@qq.com: APWCY5ws&hjQ
...
APWCY5ws&hjQ 就是初始密码,后续登录需要用到,你也可以在登陆后修改密码。
输入以下安装命令:
mysqld install
启动输入以下命令即可:
net start mysql
注意: 在 5.7 需要初始化 data 目录:
cd C:\web\mysql-8.0.11\bin mysqld --initialize-insecure
初始化后再运行 net start mysql 即可启动 mysql。
登录 MySQL
当 MySQL 服务已经运行时, 我们可以通过 MySQL 自带的客户端工具登录到 MySQL 数据库中, 首先打开命令提示符, 输入以下格式的命名:
mysql -h 主机名 -u 用户名 -p
参数说明:
- -h : 指定客户端所要登录的 MySQL 主机名, 登录本机(localhost 或 127.0.0.1)该参数可以省略;
- -u : 登录的用户名;
- -p : 告诉服务器将会使用一个密码来登录, 如果所要登录的用户名密码为空, 可以忽略此选项。
如果我们要登录本机的 MySQL 数据库,只需要输入以下命令即可:
mysql -u root -p
按回车确认, 如果安装正确且 MySQL 正在运行, 会得到以下响应:
Enter password:
若密码存在, 输入密码登录, 不存在则直接按回车登录。登录成功后你将会看到 Welcome to the MySQL monitor… 的提示语。
然后命令提示符会一直以 mysq> 加一个闪烁的光标等待命令的输入, 输入 exit 或 quit 退出登录。
2020.12.1未完待续…