版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、北京传智播客教育 php入门篇讲师:韩顺平北京传智播客教育 内容介绍 主讲:韩顺平(一) 动态网页技术的发展历程(二) 初识php1. php基本介绍2. php开发工具介绍(三) b/s结构与c/s结构的比较(四) apache工作机制分析(五) php运行基本原理(六) php环境的搭建(七)第一个php程序”hello,world”WEB开发介绍 主讲:韩顺平 WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源,即供浏览器访问的资源。 Internet上供外界访问的Web资源分为:静态web资源(如html 页面):指web页面中供人们浏览的数据始终
2、是不变。动态web资源:指web页面中供人们浏览的数据是由程序产生的,不同时间点访问web页面看到的内容各不相同。 静态web资源开发技术Html 常用动态web资源开发技术:PHP、 JSP/Servlet、ASP、 等我们课程的重点也是教大家如何使用php技术开发动态的web资源,即动态web页面。北京传智播客教育 动态网页技术的发展 主讲:韩顺平 为什么会出现 动态网页(web)技术 请思考: 请用你现有的技术,开发如下网页 (1) 网页可以让用户留言,其他人可以回复 (2) 可以网上支付 (3) 可以发送电子邮件北京传智播客教育 动态网页技术的发展 主讲:韩顺平当www网初现江湖时,当
3、时主要是html(1993),由于html只支持静态的文字和图片,不能与用户进行交互,为弥补这个不足,陆续出现了下列网页技术: (1)cgi(common gateway interface)特点a: cgi技术是早期动态技术使用最多的,发展的比较成熟并且功能强大b: 效率比较低,编程比较困难c: cgi可以用不同的语言编写(vb,delphi,c/c+,perl)常用的是c/c+和perl语言d: 现在使用cgi做动态网页比较少,但是还是有,主要用linux/unix操作系统中北京传智播客教育 动态网页技术的发展 主讲:韩顺平(2) asp asp 是html + javascrip(vbs
4、cript) + com组件的形式asp的功能强大不在于能使用相关的脚本语言而是com组件,但是com组件的开发是比较困难的asp的优势:1.简单易学。2. 安装使用方便 (windows + iis ) 3.效率比cgi要高。asp 的不足:1.功能扩张比较困难,因为asp的功能扩展在com组件,而开发com组件是比较困难的2.安全性,因为asp是与windows系统和iis一起工作的,所以windows和iis的安全漏洞会对asp造成影响3.跨平台性4.实现企业级的功能困难:如服务器的集群,负载均衡北京传智播客教育 动态网页技术的发展 主讲:韩顺平(3) jsp jsp=html+java
5、片段+jsp语法+jsjsp优势:1. 一次编写,到处运行2.良好的跨平台性3. 多种开发工具支持4. 强大的可伸缩性(jsp+javabean)的方式jsp的不足:1. jsp产品的复杂度高(jsp入门比asp难)2. jsp要求运行的机器配置要高,因为jsp是用class常驻内存的方式运行的,效率高,但是需要占用更多的内存北京传智播客教育 动态网页技术的发展 主讲:韩顺平(4) Php官方网站: Php的优势: 1. 跨平台性良好,多种数据库支持 2. 效率比较高,具有良好的安全性3. 免费使用(成本低) lamp 4.开放的源代码,所有的PHP源代码都可以得到 5. 上手快,PHP 相对
6、于其他语言,编辑简单,实用性强,更适合初学者 6.面向对像:在php4,php5 中,面向对象方面都有了很大的改进,现在php完全可以用来开发大型商业程序 动态网页技术的发展 主讲:韩顺平(4) Php不足: 1. 安装复杂(php的很多功能需要安装相应的应用库如要更好的支持图形就要安装gd库) 2. 灵活,对程序员的约束太少,php是解释运行机制,所有很多问题在运行阶段才会发现. 初识php创始人 主讲:韩顺平 php创始人PHP之父Rasmus Lerdorf出生在1968年9月22日.Rasmus Lerdorf 为了要维护个人网页,用c语言开发了一些CGI工具程式集,来取代原先使用的
7、Perl 程式。最初这些工具程式用来显示 Rasmus Lerdorf的个人履历,以及统计网页流量。他将这些程式和一些表单直译器整合起来,称为 PHP/FI。PHP/FI可以和数据库连接,产生简单的动态网页程式。初识php基本概念 主讲:韩顺平 php的基本概念 PHP最开始是lerdorf 用于维护个人主页“Personal HomePage”,而用c语言开发的cgi工具程序集,用于替代perl程序。 PHP,是英文超文本预处理语言php Hypertext Preprocessor的缩写。PHP 是一种 HTML 内嵌式的语言,是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有
8、类似于C语言,被广泛的运用。 php目前的开发和商业化由zend公司负责.初识php发展历程 主讲:韩顺平 php的发展历程PHP 最初是1994年Rasmus Lerdorf创建的,刚刚开始只是一个简单的用Perl语言编写的程序,用来统计他自己网站的访问者。后来又用C语言重新编写,包括可以访问数据库。在1995年以Personal Home Page Tools (PHP Tools) 开始对外发表第一个版本,Lerdorf写了一些介绍此程序的文档,并且发布了PHP1.0。1994 php1.01997 php3.02000 php4.01995 php2.02008 php5.0? php
9、6.0初识php开发工具 主讲:韩顺平 php常见开发工具 Editplus Zend Studio PHP Coder phpedit easyecpilse dwbs 与 cs的介绍 主讲:韩顺平b/s的优势:1.开发成本低2.管理维护简单3. 产品升级便利 4. 对用户的培训费用低5. 用户使用方便,出现故障的概率小b/s的不足: 1.安全性不足 2. 客户端不能随心变化,受浏览器的限制WEB服务器 主讲:韩顺平学习web开发,需要先安装一台web服务器(在某机器上运行web服务程序(软件),我们把这台机器称为web服务器.),然后再在web服务器中开发相应的web资源,供用户使用浏览器
10、访问。疑问:学习web开发,为什么必须要先装一个WEB服务器分析一个 iis 服务器 主讲:韩顺平Internet Information Services(IIS,互联网信息服务),是由微软公司提供的基于运行Microsoft Windows的互联网基本服务。lighttpd 主讲:韩顺平Lighttpd是一个德国人领导的开源软件,其根本的目的是提供一个专门针对高性能网站,安全、快速、兼容性好并且灵活的web server环境。具有非常低的内存开销,cpu占用率低,效能好,以及丰富的模块等特点。缺点是成熟度往往要低于Apache,通常只能用于某些特定场合apache WEB服务器 主讲:韩顺
11、平 Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。下载相关软件:apache httpd-2.2.17-win32-x86-no_ssl.msi 地址: apache WEB服务器 主讲:韩顺平运行: cmd- httpd k startshutdown|restart 或者: 输入 ,显示如下界面代表安装成功画出最简单工作示意图配合httpwatchapache 服务器无法启动故障 主讲:韩顺平可以修改或监听多个端口,例如:使服务器在所有地址上同时接受来自端口80和8000的请求
12、,可以这样写 :Listen 80Listen 8000 端口占用问题 查看端口netstat和fport,修改端口apache 目录结构 主讲:韩顺平存放启动和关闭 apache 的脚本文件linux/unix下脚本文件,windows下略过 存放 Apache 服务器的配置文件web应用所在目录,即供外界访问的web资源的存放目录,后面要详细讲Apache 帮助手册存放 Apache 服务器错误信息文件存放 Apache 图标文件Apache 各个模块二进制文件 *.osApache 日志文件写一个简单的web站点,myblog 放入自己的图片,显示自己的名字!apache 概述 主讲:韩
13、顺平Apache是目前世界上使用最为广泛的一种Web Server,它以跨平台、高效和稳定而闻名。按照去年官方统计的数据,Apache服务器的装机量占该市场60%以上的份额。尤其是在X(Unix/Linux)平台上,Apache是最常见的选择。其它的Web Server产品,比如IIS,只能运行在Windows平台上,是基于微软.Net架构技术的不二选择。Apache并不是没有缺点,它最为诟病的一点就是变得越来越重,被普遍认为是重量级的WebServer。所以,近年来又涌现出了很多轻量级的替代产品,比如lighttpd,nginx等等,这些WebServer的优点是运行效率很高,但缺点也很明显
14、,成熟度往往要低于Apache,通常只能用于某些特定场合。apache逻辑组件与操作系统关系 主讲:韩顺平Apache是基于模块化设计的,总体上看起来代码的可读性高于php的代码,它的核心代码并不多,大多数的功能都被分散到各个模块中,各个模块在系统启动的时候按需载入。你如果想要阅读Apache的源代码,可以从main.c文件读起可以考虑等学员有一定基础后,在详解apahce工作机制apache生命周期 主讲:韩顺平apache启动阶段 主讲:韩顺平可以查看一下httpd.conf配置文件中的关于加载静态/动态模块的设置.LoadModule php5_module D:/php-5.3.5/p
15、hp5apache2_2.dllAddType application/x-httpd-php .php .phtml上面两句配置文件就是告诉apache,只要url地址的后缀是 php phtml 都要使用 php5apache2_2.dll 模块来处理apache运行阶段 主讲:韩顺平配置虚拟目录请考虑一个问题 主讲:韩顺平我们把web应用放在apache默认的hdocs目录下,apache就会自动的管理,但是大家考虑一个问题: 假设apache所在磁盘(比如f:分区)空间的问题,我们能不能把web应用放在另外一个分区(比如d:分区),同样让apache去管理呢?apache配置虚拟目录
16、主讲:韩顺平 配置虚拟目录在apache的conf目录下httpd.conf 的节点后添加如下代码: DirectoryIndex index.html index.htm index.php Alias /myblog D:/myblog Order allow,deny Allow from all web应用的默认访问页面,类似欢迎页面。web应用名称,可以自行指定.请查看文档apache配置虚拟目录 主讲:韩顺平/关于安全设置的课堂练习题order deny,allowallow from deny from 218.20#代表拒绝218.20开头的IP,但允许通过;而其它非218开头
17、的IP也都允许通过。order allow,denyallow from deny from 218.20#和上面的差不多,只是掉换的order语句中的allow、deny先后顺序,但最终结果表示全部都拒绝!apache-directory配置段(指令)语法 主讲:韩顺平在一台apache 服务器中配置网站 主讲:韩顺平 看一个企业常见需求:我们在实际访问网站的过程中,不可能使 的方式去访问网站,实际上使用类似: 或者 的方式去访问网站,这个又是怎么实现的呢?在一台apache 服务器中配置网站 主讲:韩顺平 如需在apache服务器中创建WEB站点,需要启用httpd-vhosts.conf
18、文件添加note:确保dns client服务是启动状态 配置的主机(网站)要想被外部访问,必须在DNS服务器或windows系统中注册。客户端(浏览器)向apache请求的过程 主讲:韩顺平 UML的时序图描述调用某html 过程同时初步接触http协议 后面我们有一个专门的章节来详讲http协议思考: 此时我们能向apache请求一个php文件吗?php开发环境搭建 主讲:韩顺平php 可以在linux下开发,也可以在windows下开发,开发前我们需要搭建开发环境(在windows下开发需安装 apache(或者iis) +php+mysql+phpadmin这个可以没有/linux下我
19、们一般使用apache做服务器.),搭建环境的 方式有:使用appserver 或者wmap软件直接安装(套餐软件)优点: 简单,方便,不要自己配置。缺点: 不够灵活,比如版本升级。自己安装各个部分软件,手动配置优点: 灵活,可以根据开发需求选择不同版本软件.缺点: 麻烦,有一定难度我的观点: 两种都要会,尤其是第二种,作为一个专业的php开发人员,必须掌握自定义搭建php开发环境.php开发环境搭建套餐软件 主讲:韩顺平 我们先使用套餐软件安装 appserv AppServ 是 PHP 网页架站工具组合包,泰国的作者将一些网路上免费的架站资源重新包装成单一的安装程序,以方便初学者快速完成架
20、站,AppServ 所包含的软件有:Apache、PHP、MySQL、phpMyAdmin 等。 WampServer Wamp就是Windows Apache Mysql PHP集成安装环境,即在window下的apache、php和mysql的服务器软件。PHP扩展、Apache模块,开启/关闭鼠标点点就搞定,再也不用亲自去修改配置文件了,WAMP它会去做。再也不用到处询问php的安装问题了,WAMP一切都搞定了。 php开发环境搭建套餐软件 主讲:韩顺平运行: AppServ安装目录/Apache2.2/apache_start.bat 或者: 输入 ,显示如下界面代表安装成功php开发
21、环境搭建套餐软件 主讲:韩顺平写一个简单的web站点,myblog 放入自己的图片,显示自己的名字!php开发环境搭建自定义安装 主讲:韩顺平 我们使用第二种方式来搭建php开发环境.下载相关软件:apache httpd-2.2.17-win32-x86-no_ssl.msi 地址: php开发环境搭建自定义安装 主讲:韩顺平2. php php-5.3.5-Win32-VC6-x86.zip 地址: /releases/archives/ VC6就是legacy Visual Studio 6 compiler,就是使用这个编译器编译的。VC9就是the Visual Studio 200
22、8 compiler,就是用微软的VS编辑器编译的。那我们如何选择下载哪个版本的PHP呢?如果你是在windows下使用Apache+PHP的,请选择VC6版本;如果你是在windows下使用IIS+PHP的,请选择VC9版本;那Non Thread Safe是什么?Non Thread Safe就是非线程安全;Thread Safe 是什么?Thread Safe 是线程安全;官方并不建议你将Non Thread Safe 应用于生产环境,所以我们选择Thread Safe 版本的PHP来使用* 将php与apache整合:LoadModule php5_module php安装路径/php
23、5apache2_2.dllPHPIniDir “php模块安装路径AddType application/x-httpd-php .php .phtml将php.ini-deployment 改成 php.ini 启用开发模式在phi.ini 中指定扩展模块路径 extension_dir= php安装路径/ext测试:到这里,我们的apahce就和php整合的,可以写一个 test.php 测试php开发环境搭建自定义安装 主讲:韩顺平3.mysql 数据库 mysql-5.0.22 地址: * 和mysql整合, 正常安装.在php.ini文件开启支持mysqlextension=php
24、_bz2.dllextension=php_gd2.dllextension=php_mysql.dllextension=php_mysqli.dll即可.重新启动apache,访问 test.php 看 php是否支持mysql了写一个简单的test.php看看能不能连接上mysql数据库. php开发环境搭建自定义安装 主讲:韩顺平画一个简单的图来说明他们的关系,和他们各自的作用也写一个简单的web站点,myblog 放入自己的图片,显示自己的名字!4. phpmyadmin 地址 * 安装phpmyadmin :将其解压,然后得到一个文件夹(名字可以修改短点 比如 phpmyadmin).拷贝到 apache的 hdocs目录下,然后再输入 根据提示逐步安装即可.在web服务器中配置web站点 主讲:韩顺平 什么是Web站点?WEB站点是多个web资源的集合。简单的说,可
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 员工管理专业练习测试卷
- 会计实习报告范文集锦八篇
- 中秋节三年级作文获奖范文
- 山东xx产业园基础设施项目可行性研究报告
- 国家级产业园基础设施投资估算与资金筹措
- 2024年智能手机移动支付与金融业务合作协议3篇
- 2024年度合同效力争议诉讼代理委托合同范本3篇
- 2024年水电安装工程环保标准与质量控制协议3篇
- 2024年地形测量与地籍调查合同范本3篇
- 2024年度企业社会责任宣传推广合作协议3篇
- 2024-2030年中国除颤仪行业市场分析报告
- 历史-安徽省皖江名校联盟2025届高三12月联考试题和答案
- 2024年高一上学期期末数学考点《压轴题》含答案解析
- 成都中医药大学博士申请
- 公司业绩汇报及规划
- 统编版(2024版)七年级上册历史期末复习课件
- 【MOOC】工程制图-北京科技大学 中国大学慕课MOOC答案
- 招标代理岗位职责规章制度
- 家校携手育桃李 齐心合力创辉煌 课件高二上学期期末家长会
- 眼镜学智慧树知到答案2024年温州医科大学
- 2024年电大劳动与社会保障法期末考试题库及答案
评论
0/150
提交评论