0

0

后记

php中文网

php中文网

发布时间:2016-06-13 11:37:38

|

1213人浏览过

|

来源于php中文网

原创

windows安装和配置阿帕奇+PHP服务器

下载和安装阿帕奇服务器

参考:http://blog.csdn.net/wujunokay/article/details/12707259

 

下载和安装PHP服务器

这个最好到官方网站下载,有zip,也有安装的,我下载的是zip的,解压后,就可以直接用了。

关于版本有的里面没有php5apache2_2.dll,原因是版本不对,如何来判断版本呢?

v6c又有两个版本如下:
vc6 x86 non thread safe
vc6 x86 thread safe
以上两个版本中,non thread safe版的php在安装过程中,
没有apache的选项:
select the web server you wish to setup
iis fastcgi
other cgi
do not setup a web server

而thread safe版的安装过程中有apache 2.2.x module选项:
select the web server you wish to setup
apache 2.2.x module
apache cgi
iis fastcgi
iis cgi
nsapi
xitami
netserve web server
other cgi

do not setup a web server

 

如果要用php5apache2_2.dll,就要下载 x86 thread safe 系列的,我下载的是php-5.4.20-Win32-VC9-x86。

 

配置阿帕奇和PHP服务器

1.将你php安装目录下的文件php.ini-development改名字为php.ini。

2.配置upload_tmp_dir =路径,比如upload_tmp_dir="D:\myphpTmp"。

3.在阿帕奇的httpd文件里增加:

LoadModule php5_module "d:/my program/php-5.4.20-Win32-VC9-x86/php5apache2_2.dll"
PHPIniDir "d:/my program/php-5.4.20-Win32-VC9-x86"
AddType application/x-httpd-php .php .html .htm

4.在php.ini里:extension_dir改成自己安装的路径里的ext,比如:extension_dir = "D:\my program\php-5.4.20-Win32-VC9-x86\ext"。

 

测试阿帕奇和PHP服务器

1.upload.html里代码如下:

 



2.upload_file_web.php代码如下:

喵记多
喵记多

喵记多 - 自带助理的 AI 笔记

下载
 0)  {    //echo "Error: " . $_FILES["trackdata"]["error"] . "
"; $error = "200"; } else { //echo "Upload: " . $_FILES["trackdata"]["name"] . "
"; //echo "Type: " . $_FILES["trackdata"]["type"] . "
"; //echo "Size: " . ($_FILES["trackdata"]["size"] / 1024) . " Kb
"; //echo "Stored in: " . $_FILES["trackdata"]["tmp_name"]. "
" ; } if (file_exists("upload/" . $_FILES["trackdata"]["name"])) { //echo $_FILES["trackdata"]["name"] . " already exists. "; $error = "201"; } else { move_uploaded_file($_FILES["trackdata"]["tmp_name"],"upload/" . $_FILES["trackdata"]["name"]); //echo "Stored in: " . "upload/" . $_FILES["trackdata"]["name"]; $error = 202; } echo $error ; return $error;} ?>


3.将这2个文件放到httpd配置的DocumentRoot的路径下。

4.在阿帕奇的httpd文件修改这里的执行顺序:

DirectoryIndex upload.html

 

5.测试,可以把文件上传到DocumentRoot下的upload文件夹里。

 

关于$_FILES

 这个是一个文件的全局数组,但是我在用C++和IE测试的时候,用file_put_contents("abb.txt", var_export($_FILES,true));

打印出来内容不一样,如下:

点IE里是这样的:
array (
  'file' =>
  array (
    'name' => 'test3.txt',
    'type' => 'text/plain',
    'tmp_name' => 'D:\\my program\\php-5.4.20-Win32-VC9-x86\\temp\\php49A.tmp',
    'error' => 0,
    'size' => 16,
  ),
)
用vc++客户端是这样的:
array (
  'trackdata' =>
  array (
    'name' => 'test3.txt',
    'type' => 'application/x-www-form-urlencoded',
    'tmp_name' => 'D:\\my program\\php-5.4.20-Win32-VC9-x86\\temp\\php49F.tmp',
    'error' => 0,
    'size' => 16,
  ),
)

查找原因,分析如下:

原因是在VC中
 strFormat += _T("Content-Disposition: form-data; name=\"trackdata\"; filename=\"%s\"");
 strFormat += _T("\r\n");
 //strFormat += _T("Content-Type: audio/wav");
 strFormat += _T("Content-Type: application/x-www-form-urlencoded");
 strFormat += _T("\r\n");
 strFormat += _T("Content-Transfer-Encoding: binary");
在upload.html里

所以在引用的时候分别是
$_FILES["trackdata"]["error"]、_FILES["trackdata"]["type"]、_FILES["trackdata"]["name"]和
$_FILES["file"]["error"]、_FILES["file"]["type"]、_FILES["file"]["name"]。

 

后记

首先,对php不熟悉,要用阿帕奇http服务器实现c++文件上传和下载功能,先是装了阿帕奇服务器,但始终不能上传成功,在网上找一些资料,装了php服务器,可以上传成功,然后装了php服务器,测试结果是可以上传成功。那就说明阿帕奇服务器配置应该是没问题的,php这边可以,那c++也可以。那问题就是c++如果调用url,吧数据传递给服务器的问题了。这里要感谢一个网友,是北京的做php的,有他的热心帮助,才调试通c++和php,实现上传的功能。目前只能说,测试通了,还有很多性能和功能需要优化的。同样会遇到一些问题,不过只要想办法去解决,一定会有所收获的。

 

 转载请注明原创链接:http://blog.csdn.net/wujunokay/article/details/12833127


 

相关专题

更多
苹果官网入口直接访问
苹果官网入口直接访问

苹果官网直接访问入口是https://www.apple.com/cn/,该页面具备0.8秒首屏渲染、HTTP/3与Brotli加速、WebP+AVIF双格式图片、免登录浏览全参数等特性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

115

2025.12.24

拼豆图纸在线生成器
拼豆图纸在线生成器

拼豆图纸生成器有PixelBeads在线版、BeadGen和“豆图快转”;推荐通过pixelbeads.online或搜索“beadgen free online”直达官网,避开需注册的诱导页面。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

82

2025.12.24

俄罗斯搜索引擎yandex官方入口地址(最新版)
俄罗斯搜索引擎yandex官方入口地址(最新版)

Yandex官方入口网址是https://yandex.com。用户可通过网页端直连或移动端浏览器直接访问,无需登录即可使用搜索、图片、新闻、地图等全部基础功能,并支持多语种检索与静态资源精准筛选。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

546

2025.12.24

JavaScript ES6新特性
JavaScript ES6新特性

ES6是JavaScript的根本性升级,引入let/const实现块级作用域、箭头函数解决this绑定问题、解构赋值与模板字符串简化数据处理、对象简写与模块化提升代码可读性与组织性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

150

2025.12.24

php框架基础知识汇总
php框架基础知识汇总

php框架是构建web应用程序的架构,提供工具和功能,以简化开发过程。选择合适的框架取决于项目需求和技能水平。实战案例展示了使用laravel构建博客的步骤,包括安装、创建模型、定义路由、编写控制器和呈现视图。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

20

2025.12.24

Word 字间距调整方法汇总
Word 字间距调整方法汇总

本专题整合了Word字间距调整方法,阅读下面的文章了解更详细操作。

47

2025.12.24

任务管理器教程
任务管理器教程

本专题整合了任务管理器相关教程,阅读下面的文章了解更多详细操作。

7

2025.12.24

AppleID格式
AppleID格式

本专题整合了AppleID相关内容,阅读专题下面的文章了解更多详细教程。

12

2025.12.24

csgo视频观看入口合集
csgo视频观看入口合集

本专题整合了csgo观看入口合集,阅读下面的文章了知道更多入口地址。

371

2025.12.24

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Excel 教程
Excel 教程

共162课时 | 9.6万人学习

Pandas 教程
Pandas 教程

共15课时 | 0.8万人学习

C# 教程
C# 教程

共94课时 | 5.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号