php windows开发环境搭建和基础入门
注明:本文记述的是《韩顺平php系列课程php开发环境搭建》课程所讲的内容,并结合自己实践的学习过程。
对于搭建开发环境部分,不论是安装wamp还是lamp,关键要注意操作系统、软件版本、文件配置和权限问题。本文提供的是一个供您参考的搭建开发环境的样本,具体细节可能与您的操作系统及软件版本有关。如果您安装过程中出现了新的问题,可靠的办法是google install wamp 或者google install lamp,去寻求更多的帮助。 本节要点: 1.搭建php开发环境
2.初始php
3.B/S和C/S的区别
4.Apache服务器工作机制分析 5.端口
6. apache目录、虚拟目录
7.虚拟主机的配置 详细内容如下:
1.搭建php开发环境。
apache默认情况下不会处理php页面,需要搭建php开发环境。
(1)在windows下搭建 apache(iis)+php+mysql=phpadmin
a.套件安装 appserver、wmap这些软件将所需软件打包 缺点是不灵活,升级困难。 b.自定义安装 注意这里安装版本为apache2.2 php-5.3.5-Win32-VC6-x86 版本,不同版本安装方法有区别,特别是win7系统下 安装可能不成功。
step1:安装 apache apache安装界面如下图所示:
安装完毕后需要配置环境变量,环境变量设置后可以在任意路径后使用。 配置环境变量如下图所示:
最后,测试安装是否成功。
a.开启或者关闭apache服务 (1)通过用户界面控制 在Window中通过[管理]-->服务来管理或者通过apache自带用户界面管理. Window中通过[管理]开启服务如下图所示:
通过apache自带用户界面管理开启服务如下图所示:
(2)命令行控制apache服务
step1:进入控制台后运行httpd.exe程序 step2:httpd -k start[shutdown][restart]启动
b.浏览器中输入http://localhost测试,测试成功时效果如下图所示:
step2:安装php
解压php-5.3.5-Win32-VC6-x86(注意vc6版本适合apache和php 组合 vc9适合iis和php) 即可 但是要整合apache和php
a.将以下代码复制到apache中: #让apache载入php处理模块 LoadModule php5_module c:\myenv\php\php5apache2_2.dll #指定php的ini文件 该文件保存php配置 PHPIniDir "c:\myenv\php" #配置表示*.php文件由php处理 AddType application/x-httpd-php .php b.将php.ini-development文件改成php.ini c:测试apache与php整合成功 测试文件test.php代码如下: <?php phpinfo(); ?>
测试成功时效果如下图所示:
step3:安装MySQL MySQL安装界面如下图所示: MySQL安装成功与否的测试文件test.php,代码如下:
在没有配置时提示错误:Fatal error: Call to undefined function mysql_connect() in C:\myenv\Apache\htdocs\test.php onlini文件中关于 php_mysqli.dll和php_mysql.dll两个动态链接库.
(2)在linux下 linux+apache+mysql+php-->lamp 这里不讲述。
补充:如果机器,由于先前某些安装不正确,安装不正确的服务如下图所示:
要删除一些服务方法有两种: a.运行sc.exe 在上面运行 sc delete 服务名 如下图所示:
b.注册表删除 HKEY-LOCAL_MACHINES\SYSTEM\CurrentControlSet\Services 删除相应的主键值.
2.初识php (1)web开发分为:
a.静态web开发(html页面) 一个页面始终是一成不变的,则属于静态web开发,利用html技术就好。
b.动态web开发 比如网站上要发帖、网上支付、发短信、发邮件等功能,就需要数据交互,属于动态web开发。动态页面的数据由后台程序产生的,不同时间点访问网站看到不同内容。
(3)动态网页技术发展历程 html在1993年出现后为了弥补其不能和用户进行交互,陆续出现了下列网页技术: a. cgi技术 cgi技术 是最早动态网页技术,发展比较成熟且功能强大。但是cgi语言效率比较低,编程比较困难。现在应用较少,主要用于linux/unix 下.
b.微软asp asp是html+javascrip(vbscript)+com组件形式asp的功能强大,但是其需要com组件支持,而开发com组件开发比较困难的,另外asp是与windows系统和iis一起工作的,安全性较低,跨平台性差,实现企业级的功能困难。
c.sun公司 (后被oracle收购)jsp jsp=html+java片段+jsp语法+js。 一次编写,到处运行,良好的跨平台性;但是jsp产品的复杂度高,jsp运行要求机器配置高.
d.php 目前由Zend管理www.php.net 跨平台性良好,多种数据库支持 效率较高,具有良好的安全性,免费使用成本低,开放源代码,上手快,面向对象程序设计。缺点是安装复杂,配置比较多;数据类型太灵活,解释执行,所以有些错误到运行时才会暴露。
(4)php php 最早用户维护个人主页Personal HomePage, php Hyperttext Preprocessor,php是一种html内嵌语言,是一种在服务器端执行的嵌入html(<?php //php 代码 ?>)文档的脚本语言,语言风格类似于c语言,被广泛的运用,php目前的开发和商业化由Zend公司负责。
补充:软件开发的一个原则:编译环境和运行环境要一致。
服务器在这里是指安装了服务器程序的计算机 (1)B/S Browser浏览器/Server服务器 B/S结构如下图所示:
b.成本低,管理维护简单,升级产品便利 c.用户使用方便,对用户培训费用低。 缺点:安全性不足,客户端不能随心变化,受浏览器的限制。
(2)C/S Client客户端/Server服务器 C/S结构如下图所示:
4.apache工作机制分析 apache基于模块化设计的,总体上看起来代码的可读性高于php的代码。apache启动阶段: 开始--》解析配置文件--》加载静态/动态模块--》系统资源初始化--》结束 apache模块化设计如下图所示:
5.端口 (1)实际开发中,我们经常使用 netstat -an 来查看哪些端口在监听,如果发现异常端口在监听,则可以关闭该端口 使用命令netstat -anb 查看那个进程在监听,然后使用taskkill关闭该进程。 netstat -an命令使用如下图所示:
netstat -anb命令使用如下图所示:
(3)端口占用时可以通过修改apache的监听端口来解决。 apache软件的配置是在httpd.conf文件中进行相应的配置, 默认端口号为80,如下图所示:
修改默认端口为81后,测试如下图所示:
补充:apache可以监听多个端口.
6.apache目录、虚拟目录 apache目录文件说明如下图所示:
虚拟目录问题由来: 假设apache的安装目录磁盘空间不够,而D盘空间足够,如何将d盘中的文件作为站点文件访问。
(1)虚拟目录配置两个步骤
step1:配置虚拟目录在apache的conf目录下httpd.conf的<ifModule dir_module>节点后添加如下代码:
<ifModule dir_module> #欢迎页面 DirectoryIndex index.html index.htm index.php #站点别名 Alias /webtest "d:/webtest" <Directory d:/webtest> #访问权限设置 Order allow,deny Allow from all </Directory> </ifModule>
step2:注销Documentroot部分
(2)文件权限设置
<Directory d:/webtest> // #访问权限设置Order allow,deny //Order allow允许所有ip,deny拒绝所有 Allow from all //允许所有 最终允许所有 </Directory> </ifModule>
7.虚拟主机的配置 虚拟主机问题由来: 访问http://localhost方式不够方便和美观,怎么才能配置像www.baidu.com这种域名.配置虚拟主机的方法如下:
step1:启用httpd-vhosts.conf文件 在httpd.conf中找到Virtual hosts部分,取消include注释. # 配置虚拟机Virtual hostsInclude conf/extra/httpd-vhosts.conf
step2: 在conf/extra/httpd-vhosts.conf中添加虚拟主机配置 <VirtualHost 127.0.0.1:80>ServerAdmin webmaster@dummy-host.mshome.net DocumentRoot "d:/webtest" ServerName dummy-host.mshome.net ServerAlias www.dummy-host.mshome.net #配置欢迎页面 DirectoryIndex index.html index.htm index.php <Directory /> Options FollowSymLinks #不许可别人修改我们的页面 AllowOverride None #访问权限设置 Order allow,deny Allow from all </Directory> </VirtualHost>
step3:修改hosts文件 hosts文件位于:C:\Windows\System32\drivers\etc . 以重定向到www.baidu.com为例,在hosts文件为加上: 127.0.0.1 localhost 127.0.0.1 www.baidu.com 两行。 或者使用DOS控制台命令也可以,如下图所示:
虚拟主机重定向效果如下图所示:
|
|