windows下安装php笔记
为了更深入的理解下服务端的配置 ,上篇文章讲了如何在windows下安装apache , 接下来再研究下在windows下安装php并且结合apache运行php环境, 纯属学习用 ^^ ,如果嫌麻烦可以直接去安装集成环境(wamp等等)。
一 : 下载安装程序
这里下载的也是压缩包,直接解压就可以了。 最新的php版本已达到7.1了,考虑到大部分项目都是5.x版本,这里以PHP 5.6 (5.6.23)版本为例子。
php下载地址:http://windows.php.net/download/
这里选择vc11x64 thread safe压缩版本, (x86是32位的 ,不要选错了)
关于thred safe 还是Non thread safe 到网上查了下大概是这样(我们这里是apache服务器就选择thred safe 吧):
PHP的两种执行方式:ISAPI和FastCGI
ISAPI执行方式是以DLL动态库的形式使用,可以在被用户请求后执行,在处理完一个用户请求后不会马上消失,所以需要进行线程安全检查,这样来提高程序的执行效率,所以如果是以ISAPI来执行PHP,建议选择ThreadSafe版本
FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,如果是以FastCGI来执行PHP,建议选择NonThread Safe版本
通过phpinfo(); 查看其中的 Thread Safety 项,这个项目就是查看是否是线程安全,如果是:enabled,一般来说应该是ts版,否则是nts版
下载好之后解压到C:\wamp-all\目录下 ,重命名为php-5.6.23。
二 : 配置php
1. php.ini-production改名为php.ini
2. 搜索; extension_dir = "ext" 将前面的;(分号)去掉,这是打开注释。要改成绝对路径才行,否则连接数据库时会报错,例如:extension_dir = "C:/wamp-all/php-5.6.23/ext"
这个是指向扩展库目录的路径(需要指向存放 PHP 扩展库文件的目录),可以是绝对路径(如 "C:/wamp-all/php-5.6.23/ext")或相对路径(如 "ext"), 这里默认是ext, 直接打开注释就可以了。
3. 依次打开扩展库
php_fileinfo.dll、php_gd2.dll、php_mysql.dll、php_mysqli.dll、php_pdo_mysql.dll 将前面的;去掉就可以了。
三: 配置apache
上一节已经讲解了apache的基本配置,现在这里是把php安装为apache的一个扩展模块 (只是apache的一个扩展模块而已)
1. LoadModule
在apache配置文件httpd.conf 搜索LoadModule 在最后的LoadModule添加:
LoadModule php5_module "C:/wamp-all/php-5.6.23/php5apache2_4.dll"
有两个参数,第一个参数php5_module为模块的名字 ,可以自己取, 第二个参数是模块的dll文件,这个在解压的php包里面可以找到 (有几个类似的,不要找错了)。
注意:不要在后面加#注释,否则会报错
LoadModule php5_module "C:/wamp-all/php-5.6.23/php5apache2_4.dll" #加载php模块
会报参数错误。
2. AddType
在apache配置文件找到AddType application/x-gzip .gz .tgz
在下面直接加上php模块解析哪种后缀文件,多个以空格隔开
AddType application/x-httpd-php .php .phtml
3. PHPIniDir 指定php配置文件的位置
直接在AddType application/x-httpd-php .php .phtml下面添加即可
PHPIniDir "C:/wamp-all/php-5.6.23"
配置完保存,重启apache 。
发现报错
但是看不到错误日志 ,不知道哪里错了, 网上搜索了下,有的说是端口被其他程序占用了,改了端口重启apache还是一样报错 。
找到了在命令行模式下启动apache的方法, 这时如果报错,错误信息会打印在命令行
打开cmd, cd到apache/bin目录下,执行:httpd.exe -w -n "apache" -k start;
其中"apache"是安装apache时指定的apache服务器名字(见apache安装文章)
开始是报参数错误,上面已讲过了 ,把注释去掉就可以了。
去掉注释再次运行httpd.exe -w -n "apache" -k start; 发现新的错误
看到这些错误提示信息,想起了选择下载php版本的时候选择的是vc11 ,需要下载vc11的编译环境。
下载地址:http://www.microsoft.com/zh-CN/download/details.aspx?id=30679
选择合适的类型下载安装即可。
安装完成再重启apache ,太高兴了 。一切运行正常。如果要开启错误提示可以修改配置:display_errors = On 只有配置文件的错误提示打开了,才可以单独在php文件再配置错误信息是否开启。
//禁用错误报告
error_reporting(0);
//报告运行时错误
error_reporting(E_ERROR | E_WARNING | E_PARSE); error_reporting(E_ALL); //开启所有的
最后测试下php环境 ,在网站根目录下新建index.php
<?php
echo "hello world ";
打开浏览器输入http://localhost/index.php
出现:hello world
环境正常。
总结 : 开始看了细说php上的教程,那本书上的例子都太老了。这里的注意点在下载版本和配置apache上, 环境已经顺利跑通了 ,当然linux上的php环境有空也要折腾下 ^^ 。下一节看下mysql安装 。
参考文档:
1. 细说php书籍
2. http://windows.php.net/download/
3. http://jingyan.baidu.com/article/e4d08ffd8fa40d0fd2f60dfd.html
4.http://zhidao.baidu.com/link?url=Q41MURlaZKOfo_dy_YgNq7DyNDonCoL1mU71oUdEc6xf0zDxhzoOIQ6O3iJ-vHon104AgpLgAVBBI2cMJCmiMnley45_hCi5MwTZa_J2xpm
windows下安装php笔记的更多相关文章
- windows下安装mysql笔记
接着上几篇文章再来看下windows下安装mysql. 我这里是windows7 64位, 安装过程中还是遇到一些坑,这里记录下. 一.下载安装包 打开mysql官网下载页面:http://dev.m ...
- windows下安装apache笔记
之前一直是用别人配置好的apache环境来开放,今天想自己安装配置下windows下的apache(nginx+fastcgi).mysql.php等. 虽然大部分时间是在搞前端开发,偶尔也要搞服务端 ...
- Python学习笔记(三)windows下安装theano
2016.6.28补充: 不论是实验室的电脑还是我的笔记本,只要是windows下,theano.test()都是不通过的.虽然能使用一些theano中的函数,但是我感觉很不好. 所以还是转Ubunt ...
- 基于svnserve的SVN服务器(windows下安装与配置)
基于svnserve的SVN服务器(windows下安装与配置) 基于svnserve的SVN服务器(windows下安装与配置)关键字: svn 安装SVNserve 从http://subvers ...
- windows下安装win7虚拟机并安装oracle
一.win7虚拟机 与安装linux虚拟机没有什么不同,不同的是选择客户机操作系统.内存.磁盘容量,以及映像文件. 创建win7虚拟机步骤简化: 新建虚拟机-->>自定义-->> ...
- 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一)
相关连接导航 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一) 执行 $Gulp 时发生了什么 —— 基于 Gulp 的前端集成解决方案(二) 常用 Gulp 插件汇总 ...
- Windows 下安装 MongoDB
Windows 下安装 MongoDB 的步骤:1.官网www.mongodb.com下载安装包或zip包2.解压下载的文件到文件夹 D:\mongo .3.使用管理员权限打开CMD,导航到目录 D: ...
- Coreseek Windows下安装调试
由于项目需要全文检索,后面就去网上查了下资料,找到了Sphinx[中文是狮身人面像]这个全文检索引擎,听说挺好用的,不过没有中文分词.后面又去找了一下,找到了Coreseek,一款中文全文检索/搜索软 ...
- 从零开始学 Java - Windows 下安装 Tomcat
谁都想分一杯羹 没有一个人是真正的无私到伟大的,我们试着说着做自己,与人为善,世界和平!殊不知,他们的真实目的当你知道后,你会被恶心到直摇头并下意识地迅速跑开,下辈子都不想见到他.不过,他没错,你也没 ...
随机推荐
- phpinfo.php
---恢复内容开始--- apache中的配置不对 查看httpd.conf文件中是否有: AddType ...... AddType application/x-httpd-php .php -- ...
- Git之路——Git的使用
centos6.6安装git2.4 第一安装编译环境: yum -y install zlib-devel openssl-devel perl cpio expat-devel gettext-de ...
- java 代码格式(转)
//转至博客:http://developer.51cto.com/art/201202/320317.ht /** * Java编码格式个人推荐,参考JDK源码和Hyperic HQ源码(原spri ...
- oracle中字符串的大小比较,字符串与数字的比较和运算
Oracle比较字符串是根据ASCII码来的,第一个字母的ASCII大小比较如果相等再比较下一个,类推.字符串和数字进行操作是会报异常的,因为类型不一样不能进行比较. Oracle在执行SQL的时候有 ...
- 机器学习公开课~~~~mooc
https://class.coursera.org/ntumlone-001/class/index
- Binary Tree Inorder Traversa
package cn.edu.xidian.sselab.hashtable; import java.util.ArrayList;import java.util.List;import ja ...
- -_-#【Angular】工具函数
AngularJS学习笔记 上下文绑定 var f = angular.bind({a: 'xx'}, function() { console.log(this.a) }) f() // 'xx' ...
- cf701A Cards
There are n cards (n is even) in the deck. Each card has a positive integer written on it. n / 2 peo ...
- [Java] 可运行 jar 记录
在 Eclipse 上,通过 Export 选择 Java 下的 Runnable JAR file ,可以将项目导出一个可执行的 jar 包. 例子如下 1. Eclipse 项目只有一个文件 ma ...
- 支付宝开通海外退税 阿里腾讯暗战跨境O2O_21世纪网
支付宝开通海外退税 阿里腾讯暗战跨境O2O_21世纪网 支付宝开通海外退税 阿里腾讯暗战跨境O2O