传智播客 PHP程序员笔记第一天

2020-03-03 01:04:55 来源:范文大全收藏下载本文

做网站 Web程序。

需要制作一台可以在网络上被别人访问到的机器。

安装了浏览器的计算机:

browser端 能够提供网络资源的计算机:(网站在这台计算机上),能够提供某种服务。Server端。

B/S是什么意思? 浏览器/服务器的架构:

请求:浏览器端向服务器端发送数据。 Request 响应:服务器向浏览器端发送数据。回应,Response

什么样的计算机叫做服务器端? 安装了服务器软件的计算机。

Web服务器软件:iis,nginx,apache。

其中apache还是目前与php配合使用最多的服务器软件:

安装apache这个软件,使jsj成为一台web服务器。

http://www.daodoc.com/ Apache的默认的文档目录 apache的安装目录下/htdocs/

什么是静态网站,动态网站?

静态,网站上所有的内容,都是由静态页面提供的。

动态:网站的内容,是来源于某个数据源(数据库,互联网),而,在需要展示某些数据时,通过某种语言,将数据从数据源内提取,然后再展示到页面上。

如果需要做动态网站,需要

1, 数据源(数据库)mysql数据库

2, 某种语言(用于提取和展示数据之用)PHP

Amp开发:

利用apache作为web服务器,使别人可以访问到我们的网站 利用mysql作为数据源,可以保存动态网站所需要的数据 利用php来获得某个操作所需要的数据。

小测试: 输出1-100 编写php文件:

访问这个php文件:

发现,可以访问到,但是不能解析。

Apache只有提供被访问的功能,而不能提供解析php代码的功能。

因此需要安装php程序,提供解析php代码的功能:

安装PHP:

所有的请求都是web服务器来接收的(apache),但是其中某些资源需要php来处理。 通常的处理方式,是将php作为apache内部的一个模块来管理的。

将php安装成apache模块:

使用一个apache的指令,loadModule来完成:

解压php的安装包:

不需要安装可以直接执行 将php软件复制到相应的目录: E:/amp/php

由于不需要安装,目录内的可执行文件直接可以使用:

在php目录内,有个文件,就是php为apache提供的apache模块:

需要使用apache的LoadModule载入这个模块即可:

需要在apache的配置文件内,使用上面的LoadModule指令: apache的配置文件在 apache的安装目录/Conf/httpd.conf

增加如下指令即可:

修改配置文件后,需要重启动apache服务才可以:

配置apache,告知apache,哪样的前请求需要调用php来解析,而哪些不需要: 通过请求的资源的后缀名

使用apache的FilesMatch指令来完成: 当匹配到php后缀时,调用php来处理: Apache的配置文件内:

请求php文件时,php代码可以执行:

大家可以使用phpinfo()函数来测试以下,当前的php运行的环境:

安装php后,需要配置一些最基本的配置项: 修改php的配置文件: Php的安装目录/php.ini

根据需要,将相应的更改成php.ini即可:

由于php作为apache一个模块,因此需要告知apache,在哪里才能找到php的配置文件。 利用apache的指令PhpIniDir来完成:

修改配置文件,达到某些目的:

1,时区

2, php扩展文件的目录。Php的很多功能,并不是内置到php的软件内的。在需要使用某个功能时,再载入即可。这个扩展的功能文件是被保存到某个目录内的,称之为php的扩展目录: Extension_dir:

修改完了php的配置,也需要重启apache才能生效

如果我们的php需要操作数据的话,需要利用数据软件了。 安装Mysql。

1, 安装 2, 配置

配置mysql的安装目录,和mysql数据的保存目录:

安装完成时,勾选运行配置向导,完成配置的过程:

配置字符集:

简单介绍Mysql: 数据库服务器:

属于server端。因此,需要等待某个程序请求他才可以运行。

能够对mysql数据库服务器发出请求的我们称之为mysql客户端。

C/S Client客户端

Server服务器

在安装完mysql后,其实安装了2个软件1,mysql的服务器端,2,mysql的客户端。

我们需要使用php来操作mysql。

其实 在php操作mysql的过程中,php就变成了 mysql的客户端。

Php能够作为mysql的客户端,使用php的php_mysql.dll这个扩展完成,而且,这个扩展不是默认开启的。

开启相应的mysql的操作扩展,利用php的指令extension来完成。 Php.ini:

B/S C/S

1, 服务器在监听(运行),提供某个服务

2, 浏览器或者客户端,对服务器发出请求。在发送请求时,请求的数据一定要按照某种数据格式才可以。数据格式在网络数据传输时称之为网络协议。 3, 服务器接收到请求后,会根据请求数据,进行相应的操作。 4, 将处理好的结果返回给浏览器(客户端),回应。Response 5, 浏览器端(客户端)对回应的数据进行展示输出,

b/s 都是用浏览器发出请求的。

http https c/s架构,都是采用某个服务专用的客户端发出的请求。

Bs架构通常,任何两次请求回应周期是没有任何联系的。在发出请求时,都需要先建连接。

Cs通常,在连接一次之后,通常就会保持住这个连接,后续的操作,就不需要再次建立连接了。

PHP与apache联系:

1, php作为apache的模块而存在。 loadModule 2, web服务器与php之间通过 CGI方式产生联系。CGI(通用网关接口),IIS+PHP。现在CGI被fastCGI。Nginx+PHP

apache的虚拟主机:

通常一个web服务器,代理的是一个网站。

有时我们需要利用一个web服务器,管理多个站点。不同的站点拥有独立的域名。

通过配置apache服务器,达到,访问

Test.kang.com时,看到的是test目录的内容。 Shop.kang.com时,看到的是shop目录的内容

Apache的基于域名的虚拟主机技术:

主机:一个网站,就是一些php文件的集合,一个保存php文件的目录 域名:指向某个网站的名称。

通过修改apache配置文件达到效果:

Apache/comf/httpd.conf 原则上在这个配置文件内写虚拟主机的配置就可以了。但是通常我们都是将虚拟主机的配置写到某个单独的配置文件内,然后将这个虚拟主机配置文件再载入到apache的这个httpd.conf配置文件内。 引入的操作:

虚拟主机的专门的配置文件:

编辑这个虚拟主机文件,增加虚拟主机:

在配置文件内,每一个指令段就配置了一个虚拟主机。 增加一个虚拟主机,就是:增加一个VirualHost指令段即可:

域名和目录是一个虚拟虚拟主机最基本的必备元素。

完成以上的操作,apache配置已经完成,apache上已经存在两个虚拟主机了:

在配置了虚拟主机之后,我们对web服务器的默认访问(没有使用配置的虚拟主机域名的访问),都会访问到默认的主机上。

默认的主机:

1, 在配置了虚拟主机后:默认的主机就是 第一个配置的虚拟主机 2, 在没有配置虚拟主机时,是htdocs目录。

那么怎么才能在使用虚拟主机的前提下,让localhost访问到原来的htdocs?

如何能够通过在浏览器上输入相应的虚拟主机域名访问到我们的虚拟主机呢? 在浏览器端,需要通过相应的域名,解析成目标服务器的ip地址才可以。

可以通过过浏览器端操作系统上自带的 域名解析文件完成。Hosts

配置虚拟主机时,常用的配置:

目录的权限的配置

利用apache的directory指令段完成配置 看 httpd.conf的配置:

目录级别的配置,对当前目录,及其后代目录有效果。

如果在apache的配置文件内,没有对某个目录进行配置,则采用默认的目录配置

可以通过修改默认的配置达到目的,但是通常是针对目录进行单独配置: 增加一个 Directory指令段:

为了将目录与虚拟主机联系起来,通常在VirtualHost内,使用Directory指令 Conf/extra/httpd-vhosts.conf

直接访问目录的配置:

在访问目录时,

先检测当前目录是否配置了目录索引页,

如果配置了索引页,则展示索引页的内容。目录的索引页使用apache的指令 directoryIndex完成配置。这个指令是可以写到directory段内。

如果没有配置目录索引页:则需要将目录的的内容以列表的形式显示出来,但是是通过配置apache的指令options加以配置,是否可以显示目录的索引列表。

可以在配置 options时 增加上允许符号连接的配置:

Apache的配置文件系统:

Apache程序,只会在apache服务器启动时,读取apache配置文件的内容,称之为apache主配置文件。

一旦配置文件的语法出错,就会导致apache服务器启动失败,提示:

Apache提供一个apache的配置文件检查的功能:

也可以通过 cmd,命令行运行:

Apache还有一个配置文件,称之为apache的分布式配置文件,apache允许在某个目录内部,使用独立的配置文件,来配置当前目录及其后代目录的中的一些设置。但是此时配置文件名称,就不是httpd.conf了 而是 .htacce

在这个.htacce配置文件中配置的内容,只能是目录级别的配置。

但是默认情况下,分布式配置文件是不可以使用的。可以通过在主配置文件中使用apache的 Allowoverride指令加以配置。由于分布式配置文件是配置目录的,因此 allowoverride也是需要写到Directory段。

分布式与主配置文件的区别:

1, 主配置文件需要保存到Conf目录中,而分布式需要保存到所有需要配置的目录中

2, 主配置文件只要在apache启动时,才读取,而分布式配置文件,在apache访问到某个目录时都会读取一次。

作业

1, 每个人配置一个虚拟主机: 域名是 test.ip.com Test.100.com

2, 在test.ip.com上增加一个表单页面 Welcome.html页面

最好在表单提交时,验证姓名不能为空,为空给出提示,不能提交。

分析上面的例子:

发生了几次请求和回应的过程。

传智播客PHP教学之PHP基本语法

传智播客 韩顺平php从入门到精通 6178讲面向对象课堂笔记

PHP程序员

PHP程序员陋习

php程序员要求

php程序员个人简历

PHP程序员面试题

php程序员岗位职责

PHP程序员面试题

php程序员个人简历

《传智播客 PHP程序员笔记第一天.doc》
传智播客 PHP程序员笔记第一天
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档
下载全文