爱就爱了

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 10100|回复: 0

PHP提升_第一期_任务1:安装PHP开发环境

[复制链接]
发表于 2014-1-10 14:45:10 | 显示全部楼层 |阅读模式

本次任务:

搭建PHP的开发环境
时间: 8.1日
要求:

手动安装php环境(集成环境不算, 仅winow下即可, linux作参考, 但题linux下也可出).
包括mysql+php+apache+phpadmin, 版本不限. 要求能进行web测试。
安装开发IDE,包括(zend 5+ editplus+emeditor+dreamweaver)

手册:
http://www.php.net/manual/zh/install.windows.php
http://www.php.net/manual/zh/install.windows.apache2.php
http://www.php.net/manual/zh/install.windows.extensions.php


参考内容:
http://www.php.net/manual/zh/install.unix.php
http://www.php.net/manual/zh/install.pecl.php


关注内容:phpinfo, 安装成功不成功, 主要看这个!


======================================

1、apache、mysql、php的windows下的安装顺序  
答:apache、mysql要在php前安装,apache和mysql的安装顺序随意

2、开启了php_curl扩展,为什么还会提示没有开启curl服务呢,怎么解决?
答:把PHP目录中的libeay32.dll, ssleay32.dll, php5ts.dll, php_curl.dll文件到system32 目录下后,重启apache

3、在windows下使php工作于apache2.x之中的三种方法?
答:handler、cgi、fastcgi

注:一般模块安装为 handler

========================================

1、当配置好apache php 后在浏览器上输入http://localhost 页面没有相应 是因为没有配置默认页面DirectoryIndex

2、下载    PHP 包时会有这样的问题在下载的PHP 包里没有php5apache2_2.dll扩展,是因为下载包时有两种

3、apache PHP 配置时一般会加上两句话
LoadModule php5_module E:/PHP/php-5.2.10/php5apache2_2.dll #PHP目录
AddType application/x-httpd-php .php #执行php的文件类型
但是总有时会报错 原因看看加的两段有没有多于空格,x-httpd-php后面有空格

==============================================

1.windows下安装环境时,php与apache结合配置时,修改了php与apache的配置文件,重启apache,出现” the requested operation has failed” 如何解决?
答:出现上述错误,无法确定是哪个出问题,可以利用doc命令找出错误原因,首先需进入apache所在目录,然后敲入命令:httpd.exe -w -n "Apache2.2" -k start 
下面会有详细信息说明。
需要注意:保证php目录下面 php5_apache2_2.dll文件存在;
在配置apache时注意引入此文件,并指定到正确目录下;
在编辑apache配置时注意空格问题,如果有多余空格,可能会引起错误;

批注:感觉你的问你是php 跟apache 压根就没有建立联系,不怎么清楚

2.windows下安装php+apache+mysql开发环境,如何配置服务器仅处理get和post请求?
答:配置apache的配置文件如下:
<LimitExcept GET POST>
Deny from all
</LimitExcept>

批注:这个没找到

3.myql安装完成,出现不能“Start service”,这是为什么?
答:

<1.出现在以前有安装mysql的服务器上,解决的办法,先保证以前安装的mysql服务器彻底卸载掉了;
<2.检查是否按上面一 步所说,之前的密码是否有修改,如果是重装,并且之前已经设置了密码,在这里更改密码可能会出错,请留空,并将“Modify Security Settings”前面的勾去掉,安装配置完成后另行修改密码;
<3.将mysql安装目录下的data文件夹备份,然后删除,在安装完成后,将安装生成的 data文件夹删除,备份的data文件夹移回来,再重启mysql服务就可以了,这种情况下,可能需要把之前数据库备份;

批注:不知道说得对不对,听着好像是已经装过mysql 但是再装一个就会冲突

==========================================

1,加入调试代码
建立一个debug.php文件。里面可以加入$_GET,$_POST等值。然后在php.ini中设置:include_path = "c:/php",并将debug.php放在此文件夹。
如果想添加公共头尾文件一样可以:
在ini中找到 Automatically add files before or after any PHP document.

auto_prepend_file = auto_prepend_file.php;            //依附在头部
auto_append_file = auto_append_file.php;            //依附在尾部

2,如何使Html/PHP格式的字符串不被解释,而是照原样显示
例子:
PHP";
Echo "被解释过的: ".$str."经过处理的:";
Echo htmlentities(nl2br($str)); //两次转换后输出。
?>

3,如何配置GD库
1:拷贝dlls文件夹里所有dll文件到system32目录下c:windowssystem32
2:打开php.ini
设置extension_dir = "c:/php/extensions/";
3:extension=php_gd2.dll;把extension前面的逗号去掉,如果没有php_gd2.dll,php_gd.dll也一样,保证确实存在这个文件c:/php/extensions/php_gd2.dll

注: 一般用环境变量, 不需要把dlls文件夹考到c:windowssystem32

===================================================锫奕

1,在判断$_POST全局变量是否有传递过来的参数时,用if可以吗?
答:建议用isset(),if属于判断语句,其里面的变量必须是已经被定义过的,所以不能用if。
批注: 全局变量也称为外部变量,它是在函数外部定义的变量。

注: isset() 判断变量有无声明, 然后再判断其他。如果懒,可以用empty()

$_POST 是全局变量,那就说明它已经是定义过的,所以能用

2,form表单提交时,提交的什么内容?
答:在提交时,提交的是标签的name和value属性,其中name作为键值,value作为数组元素,如果标签没有name属性,那么就不会提交。

批注:我不知道你的提交是指什么,但是我知道如果有提交地址他会找到那个地址,提交后的那个值是空的。是这意思吗?

注: 表单提交时, 如果是get, 就是get, 如果是post, 有编码方式的区别!可以注意一下!另外, 有的最然有name, 但无值时, 用 isset()取不到真。


3,什么是会话?
答:当一个用户访问一个网站时就会建立一个会话,与服务器进行交流,当整个网站的所有页面都被关闭时,会话结束,session也被释放了。

批注:  就WEB开发来说,一个会话就是你通过浏览器与服务器之间的一次通话,只不过这种通话是以用浏览器浏览的方式来实现的

这是我百度的 ,不知道对不,我也不怎么懂。但是看上去像那回事,tom讲解

注:会话是浏览器和服务器间保持的一个会话, 会话不是全局级的, 是用户全局级的。一般情况下,这种会是浏览器生命周期, 浏览器关闭, 会话结束! 当然这个也可以配置。见php.ini中的session部分。 当你新打开一个窗口时, 会启动一个新会话,但你从一个旧窗口中打开新窗口, 不会生成新会话(可测一下)。

=======================================================

1.局域网内两台机器apache 可不可以互相访问
可以
修改httpd.conf的配置就可以了。
加入ip是192.168.0.1(这是一个局域网内网ip)
修改Listen的配置为
Listen 192.168.0.1:80 然后重启apache
另外:第一,服务器的防火墙要关,如果你是用xp系统的话,系统自带的防火墙一定要关。
第二,配置问题
<Directory "C:/Apache2.2/htdocs">
Order allow,deny
Allow from all
</Directory>

批注:   1.  加入ip是192.168.0.1(这是一个局域网内网ip) 这个应该是在 Windows\System32\drivers\etc\hosts 中加吗?

Tom注:域名配置只是将本机的域名指向哪个IP, 但访问时,也会反host名带过去!

服务器需要配置虚拟主机监控这个IP, 根据host名设分流, 才能访问。

2.  为什么要修改这个 Listen的配置  

注: 表示服务器监听哪个端口

2.php扩展库出ext外还有其他的吗?比如说连接mysql外的数据库的dll,该去哪找?
有很多扩展库,例如curl等,也可以自己写。php_dba.dll和php_oci8.dll应该是php自带的,常用的应该都在php/ext中。

注: window下的dll库,除了自带的外,其他需外他人或自已编译dll. 手册上有如何编译的方法。

3.php怎么发布一个完整的网站项目(windows/linux/unix),直接放在www目录下就可以了吗
答案(网上查的)  
a. 代码仓库直接发布
在服务器上 svn export ....  
b. 如果服务器很多,
(1)在一台发布 服务器上   svn export ...
(2) 然后向别的服务器推送,  rsync ....

批注: 看不懂

注: 只要能发上就行。
=======================================================

1、apache、mysql、php在windows下的过程
答:首先安装apache或mysql数据库,两个都安装成功后,最后安装php

2.安装完成后本地搭建链接在线项目,因数据库链接使用pdo,如何开启pdo扩展?
答:把PHP目录中的php_pdo.dll文件拷贝到system32 目录下,然后打开php.ini,找到extension=php_pdo.dll;把extension前面的分号去掉

3.如何在本地自定义域名访问本地项目,如在本地搭建分站项目
答:链接自定义,例如定义访问地址为:bendi.homelink.com.cn,打开目录:C:\WINDOWS\system32\drivers\etc,找到hosts文件并打开,在末行加入127.0.0.1 bendi.homelink.com.cn,关闭保存!
之后打开httpd.conf进行编辑,加入:
NameVirtualHost *:80
<VirtualHost *:80>   
ServerAdmin 邮箱地址
DocumentRoot 项目存放路径
ServerName bendi.homelink.com.cn
</VirtualHost>
加入后保存关闭,之后重启apache和浏览器就可以直接以自定义域名进行访问了

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|平龙认个人分站 - 爱就爱了 ( 豫ICP备14029057号-2、4、5 )
豫公网安备 41010502002156号

GMT+8, 2024-12-22 15:21 , Processed in 0.043852 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表