1. 首页
  2. IT资讯

最新的win10系统PHP开发环境搭建

“u003Cdivu003Eu003Cpu003E本人大四学生一枚,最近学校安排了为期一周的HTML5的实训。在实训过程中讲到了AJAX这一部分,进行实训案例练习时需要用到后端技术PHP,开发环境需要PHP+MySQL+Apache,老师提供了phpStudyPHP2014这个集成的开发环境。集成开发环境有很多,只要一键安装就把PHP环境给搭建好了。之前我已经安装好了MySQL,觉的使用phpStudyPHP2014不太方便,于是想着搭建自己的PHP开发环境。u003Cu002Fpu003Eu003Cpu003E之前没有学习过AJAX,先简单说下我的理解吧。它是一种支持异步请求的技术。用自己的话来讲就是用户在提交一个请求时可以实现局部刷新,而不需要重新载入刷新整个页面。比如想要在在购物车添加某件商品数量时,会重新载入整个页面。如果使用Ajax计算新的总量,服务器只会返回新的总量值,所需的带宽仅为原来的百分之一。再比如,在Ajax中,如果用户在分页列表上单击Next,则服务器数据只刷新列表而不是整个页面。u003Cu002Fpu003Eu003Cpu003E新手配置环境是非常容易被环境欺负的,最初从网上找搭建教程,发现最新的PHP环境搭建已经是2015年12月的了,当时为了尽快搭好环境,下载了博主提供的压缩包,按照教程进行了配置,却出现了各种错误,最后是我遇到的错误及解决办法汇总,亲测有效。在解决错误时,网上查的资料很多都过时了,解决起来比较困难,后来学会了查看Apache的错误日志Apache24u002Flogsu002Ferror.log,提高了效率。白天要上课,自己的时间少,主要在虚拟目录这块儿浪费时间较多,后来发现目前我的需求根本用不着虚拟目录,在若干天之后总算成功了。于是突然奇想,为什么不用最新的Apache和PHP版本自己配置一遍呢?于是有了以下成果。u003Cu002Fpu003Eu003Cpu003E上Apache官网从英文粗略的看出官方不再提供Apache服务器的安装包,只有源码编译。我英语水平相当不给力,这时候感受到了学英语的重要性,看着满屏英语没辙,于是从网上找了找资源,嘿嘿。发现ApacheHaus、Apache Lounge提供了安装包,亲自测试Apache Lounge这个网站是打不开的,最后从www.apachehaus.com下载到了最新的httpd-2.4.23-x64-vc14-r3.zip,查阅资料发现系统必须安装C++ Redistributable Visual Studio 2015 Update 1:VC_redist.x64.exe,还有后面需要用到的FastCGI模块mod_fcgid-2.3.9-win64-VC14.zip。u003Cu002Fpu003Eu003Cpu003Eu003Cimg src=”http:u002Fu002Fp9.pstatp.comu002Flargeu002F101c0002d88ff4db17ab” img_width=”1366″ img_height=”608″ alt=”最新的win10系统PHP开发环境搭建” inline=”0″u003Eu003Cu002Fpu003Eu003Cpu003E再上PHP官网http:u002Fu002Fwindows.php.netu002Fdownload#php-7.0上下载PHP安装包,发现都有VC14或VC11的字样,这是什么含义呢?VC11、VC14是Apache httpd二进制版本的编译类型。另外要注意看WEB服务器是什么,如果是IIS系列,就选择带“Non Thread Safe”的版本,如果是Apache httpd系列,就选择带“Thread Safe”的版本。u003Cu002Fpu003Eu003Cpu003E我这里用的是Apache服务器,选择php7.0.12下“VC14 x64 Thread Safe (2016-Oct-13 21:05:31)”的压缩包(ZIP)版本。u003Cu002Fpu003Eu003Cpu003Eu003Cimg src=”http:u002Fu002Fp3.pstatp.comu002Flargeu002F101c0002d8d4ddca5230″ img_width=”1366″ img_height=”635″ alt=”最新的win10系统PHP开发环境搭建” inline=”0″u003E 从PHP官网了解到,php7作为Apache模块安装时仅支持VC6以下的Apache,不能和VC9以上的Apache一起运行。我这里采用了网上推荐的fastcgi形式安装。u003Cu002Fpu003Eu003Cpu003EMySQL之前已经安装好了,不再赘述。u003Cu002Fpu003Eu003Cpu003EAache安装测试u003Cu002Fpu003Eu003Cpu003E解压httpd-2.4.23-x64-vc14-r3.zip,为了方便个人管理我将解压得到的文件夹Apache24直接放在D盘根目录下(D:)。同时对Apache配置文件httpd.conf中用到路径的配置作相应修改:u003Cu002Fpu003Eu003Cpu003EDefine SRVROOT “D:u002FApache24″u003Cu002Fpu003Eu003Cpu003EServerRoot “${SRVROOT}”u003Cu002Fpu003Eu003Cpu003EDocumentRoot “F:u002FHBuilder-workpace”u003Cu002Fpu003Eu003Cpu003E<Directory “F:u002FHBuilder-workpace”>u003Cu002Fpu003Eu003Cpu003E…u003Cu002Fpu003Eu003Cpu003E<u002FDirectory>u003Cu002Fpu003Eu003Cpu003E本人Server目录为”D:u002FApache24″工作目录为”F:u002FHBuilder-workpace”,另外附上旧版本的路径配置:u003Cu002Fpu003Eu003Cpu003EServerRoot “D:u002FApache24″u003Cu002Fpu003Eu003Cpu003EDocument Root “F:u002FHBuilder-workpace”u003Cu002Fpu003Eu003Cpu003E<Diretory “F:u002FHBuilder-workpace”>u003Cu002Fpu003Eu003Cpu003E…u003Cu002Fpu003Eu003Cpu003E<u002FDiretory>u003Cu002Fpu003Eu003Cpu003E发现新版本定义了变量SRVROOT,个人感觉非常好用!u003Cu002Fpu003Eu003Cpu003E以管理员身份启动命令提示符,使用cd D:u002FApache24u002Fbin切换到apache的命令目录,在命令行输入httpd.exe即可启动apache服务器。u003Cu002Fpu003Eu003Cpu003E在浏览器输入地址http:u002Fu002Flocalhost,出现It works!即代表apache启动成功。u003Cu002Fpu003Eu003Cpu003Eu003Cimg src=”http:u002Fu002Fp3.pstatp.comu002Flargeu002Ff7800077b24004ee757″ img_width=”1366″ img_height=”984″ alt=”最新的win10系统PHP开发环境搭建” inline=”0″u003Eu003Cu002Fpu003Eu003Cpu003E这种方式并没有将apache安装成为系统服务,命令行退出了服务也就结束了。安装成服务也非常简单,只需要执行httpd.exe -k install,卸载服务执行命令httpd.exe -k uninstall。安装成功后启动bin目录下的ApacheMonitor可以对服务器进行管理。u003Cu002Fpu003Eu003Cpu003Eu003Cimg src=”http:u002Fu002Fp3.pstatp.comu002Flargeu002F101f0000f5904550b7dc” img_width=”526″ img_height=”343″ alt=”最新的win10系统PHP开发环境搭建” inline=”0″u003Eu003Cu002Fpu003Eu003Cpu003EPHP7安装测试u003Cu002Fpu003Eu003Cpu003E解压php-7.0.12-Win32-VC14-x64.zip到D:u002Fphpu002F并重命名为php7。将前面准备好的FastCGI模块mod_fcgid-2.3.9-win64-VC14.zip解压得到mod_fcgid.so文件拷贝到Apache的modules文件夹。修改Apache配置文件httpd.conf添加FastCGI配置:u003Cu002Fpu003Eu003Cpu003ELoadModule fcgid_module modulesu002Fmod_fcgid.sou003Cu002Fpu003Eu003Cpu003E<IfModule fcgid_module>u003Cu002Fpu003Eu003Cpu003EFcgidInitialEnv PHPRC “D:u002Fphpu002Fphp7″u003Cu002Fpu003Eu003Cpu003EFcgidInitialEnv PHP_FCGI_MAX_REQUESTS 1000u003Cu002Fpu003Eu003Cpu003EAddType applicationu002Fx-httpd-php .phpu003Cu002Fpu003Eu003Cpu003E<Files ~ “\.php$”>u003Cu002Fpu003Eu003Cpu003EAddHandler fcgid-script .phpu003Cu002Fpu003Eu003Cpu003EFcgidWrapper “D:u002Fphpu002Fphp7u002Fphp-cgi.exe” .phpu003Cu002Fpu003Eu003Cpu003E<u002FFiles>u003Cu002Fpu003Eu003Cpu003E<u002FIfModule>u003Cu002Fpu003Eu003Cpu003E为站点根目录的Options增加ExecCGI,我设置的站点目录为F:u002FHBuilder-workpaceu003Cu002Fpu003Eu003Cpu003E<Directory “F:u002FHBuilder-workpace”>u003Cu002Fpu003Eu003Cpu003EAllowOverride Allu003Cu002Fpu003Eu003Cpu003EOptions -Indexes +ExecCGIu003Cu002Fpu003Eu003Cpu003E<u002FDirectory>u003Cu002Fpu003Eu003Cpu003E找到:u003Cu002Fpu003Eu003Cpu003E<IfModule dir_module>u003Cu002Fpu003Eu003Cpu003EDirectoryIndex index.htmlu003Cu002Fpu003Eu003Cpu003E<u002FIfModule>u003Cu002Fpu003Eu003Cpu003E添加index.php改为:u003Cu002Fpu003Eu003Cpu003E<IfModule dir_module>u003Cu002Fpu003Eu003Cpu003EDirectoryIndex index.php index.htmlu003Cu002Fpu003Eu003Cpu003E<u002FIfModule>u003Cu002Fpu003Eu003Cpu003E站点默认加载index.phpu003Cu002Fpu003Eu003Cpu003EApache配置已经完成接着要配置php7,php的配置文件为php.ini,文件夹中并没有这个文件,但提供了php.ini-development和php.ini-production这两个文件作为参考,直接将php.ini-development重命名为php.ini作为配置文件即可。配置文件可以设置php扩展库,需要指定扩展库所在的目录。u003Cu002Fpu003Eu003Cpu003E找到php.ini中Dynamic Extensions这一块儿关于extension_dir的注释,在后面直接添加extension_dir=”D:u002Fphpu002Fphp7u002Fext”。开启相应的库只需要去除前面的分号(注释)即可:u003Cu002Fpu003Eu003Cpu003Eextension=php_curl.dllu003Cu002Fpu003Eu003Cpu003Eextension=php_gd2.dllu003Cu002Fpu003Eu003Cpu003Eextension=php_mbstring.dllu003Cu002Fpu003Eu003Cpu003Eextension=php_mysql.dllu003Cu002Fpu003Eu003Cpu003Eextension=php_xmlrpc.dllu003Cu002Fpu003Eu003Cpu003E最后设置相应的时区,在Date这一块儿中date.timezone = Asiau002FShanghaiu003Cu002Fpu003Eu003Cpu003E配置完成,重启Apache使配置生效。在站点目录(F:u002FHBuilder-workpace)新建记事本,并输入以下内容:<?php phpinfo() php?>,重命名该记事本为index.php。此时在浏览器中输入:http:u002Fu002Flocalhostu002Findex.php,出现以下界面则配置成功。u003Cu002Fpu003Eu003Cpu003Eu003Cimg src=”http:u002Fu002Fp3.pstatp.comu002Flargeu002F101d000884c997aba2a9″ img_width=”1011″ img_height=”574″ alt=”最新的win10系统PHP开发环境搭建” inline=”0″u003Eu003Cu002Fpu003Eu003Cpu003Eu003Cstrongu003E遇到的问题及解决:u003Cu002Fstrongu003Eu003Cu002Fpu003Eu003Cpu003E运行Apache时命令提示符输入httpd.exe报错:u003Cu002Fpu003Eu003Cpu003EAH00558: httpd.exe: Could not reliably determine the server’s fully qualified domain name, using fe80::440e:6a61:c978:8441. Set the ‘ServerName’ directive globally to suppress this messageu003Cu002Fpu003Eu003Cpu003E通过查阅资料得知需要对ServerName进行配置。解决办法:u003Cu002Fpu003Eu003Cpu003E1.进入apache的安装目录:D:u002FApache24u002Fconfu003Cu002Fpu003Eu003Cpu003E2.编辑httpd.conf文件,ctrl+F搜索”#ServerName”,找到:u003Cu002Fpu003Eu003Cpu003E#ServerName www.example.com:80u003Cu002Fpu003Eu003Cpu003E#ServerName localhost:80u003Cu002Fpu003Eu003Cpu003E将#ServerName localhost:80前的#号去点即可,#是注释的意思,去掉之后才会起生效。修改后:u003Cu002Fpu003Eu003Cpu003E#ServerName www.example.com:80u003Cu002Fpu003Eu003Cpu003EServerName localhost:80u003Cu002Fpu003Eu003Cpu003E3.再重新启动apache 。u003Cu002Fpu003Eu003Cpu003E这时候发现不再报错。虽然AH00558这个错误存在也能正常运行,不过解决掉不再报错心里是非常舒坦的。u003Cu002Fpu003Eu003Cpu003E修改Apache默认目录后没有访问权限:u003Cu002Fpu003Eu003Cpu003E在httpd-conf找到以下配置:u003Cu002Fpu003Eu003Cpu003E<Directory u002F>u003Cu002Fpu003Eu003Cpu003EAllowOverride noneu003Cu002Fpu003Eu003Cpu003ERequire all denyu003Cu002Fpu003Eu003Cpu003E<u002FDirectory>u003Cu002Fpu003Eu003Cpu003E将Require all deny改为Require all granted即可u003Cu002Fpu003Eu003Cpu003E<Directory u002F>u003Cu002Fpu003Eu003Cpu003EAllowOverride noneu003Cu002Fpu003Eu003Cpu003ERequire all grantedu003Cu002Fpu003Eu003Cpu003E<u002FDirectory>u003Cu002Fpu003Eu003Cpu003E修改Apache默认端口:u003Cu002Fpu003Eu003Cpu003E将Listen 80(仅此一处)修改为Listen 8080或者Listen 8088,注意端口不能随意更改为任意数字!u003Cu002Fpu003Eu003Cu002Fdivu003E”

原文始发于:最新的win10系统PHP开发环境搭建

主题测试文章,只做测试使用。发布者:熱鬧獨處,转转请注明出处:http://www.cxybcw.com/10866.html

联系我们

13687733322

在线咨询:点击这里给我发消息

邮件:1877088071@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code