php环境的配置相对来说比较繁琐,网上教程大部分都是放一起说,总体感觉比较乱,其实Apache是一款通用的服务器软件,可以用来配置支持静态页面,php、Python、Java甚至asp等服务端语言,要把Apache理解成单独的服务器,并不一定和php搭档,只是和php配合是比较流行的一种组合方式,就比如lamp就是比较流行的网站架构,所以,首先我们来配置Apache,首先让服务器跑起来并能解析静态的html文件

  首先我们去官网下载最新版本的Apache,首先来到首页:http://www.apache.org/

  

  这就是Apache基金会的官方网站,拉到底会看到有很多的开源项目,如Spark、Struts框架、流行的Hadoop大数据平台、tomcat服务器等,最著名的就是第一个HTTP Server也就是http服务器,

  

  现在,点击进去就是Apache服务器页面了,网址是:http://httpd.apache.org/

  官方提供了很多文档等,比网上搜到的结果要系统并且准确,并且还有中文版

  好了,我们看到现在最新版是2.4.18,点击"Download"超链接

  

  进来之后会看到下载的类型,前面几项是Linux版本的包文件和源码,点击最后一个Windows版本

  

  然后现在看到的就是下载页面:

  

  我们看到,Apache服务器没有专门用于Windows的版本,需要自己对源码进行编译生成二进制文件,如果不编译的话可以下载下面提供的编译好的程序

  后面的WampServer和XAMPP就是Windows平台最流行的集成环境,上面第一项或者第二项就是编译好的Windows版本的Apache服务器,我们单击第二项进去,就是最终的下载页面了,链接是:http://www.apachelounge.com/download/

  现在我们根据操作系统的位数直接下载就可以了,

  

  下载完之后,我们为了方便,首先建立一个目录用来专门放置服务器和后续的php运行环境,我是建立在C:/www下,然后把刚才下载的服务器解压到该目录下,然后C:/www/Apache24下就是这个样子

  

  还要注意一个地方就是最新Apache的运行环境最低必须建立在VC++2014之上,然后VC++2015更没有问题,同样php运行也需要这个环境,我前面的文章提到过,所以安装一次VC14或者VC15就没问题了

  现在开始配置服务器,首先打开conf目录下的httpd.conf配置文件

  找到ServerRoot "c:/Apache24"这一行,

  根据实际目录进行更改,所以改为:ServerRoot "c:/www/Apache24"

  找到#ServerName www.example.com:80把前面的#去掉即可

  然后找到 DocumentRoot "c:/Apache24/htdocs"这个意思就是我们web资源放置的根目录了,这里我的改为:DocumentRoot "c:/www/Apache24/htdocs"

  然后及接着下面一行:<Directory "c:/Apache24/htdocs">这个也是web资源的跟目录,所以改为:<Directory "c:/www/Apache24/htdocs">

  然后找到:

  <IfModule dir_module>
    DirectoryIndex index.html
  </IfModule>

  这个意思就是我们的默认首页程序,可以设置为:DirectoryIndex index.html index.htm index.php 这个配置是按照优先顺序进行访问

  然后找到:ScriptAlias /cgi-bin/ "c:/Apache24/cgi-bin/"这里的意思是设置cgi的目录,在Apache目录下有个cgi-bin目录,所以这里应该改为:ScriptAlias /cgi-bin/ "c:/www/Apache24/cgi-bin/"

  然后找到:

  <Directory "c:/Apache24/cgi-bin">
    AllowOverride None
    Options None
    Require all granted
  </Directory>

  这些代码,注意和我们前面的web根目录不是同一个位置,把这里也改成cgi-bin的目录,和ScriptAlias一样就行

  到这里,我们的Apache服务器配置就完成了,现在可以解析html运行应用了

  现在,运行cmd,进入C:\www\Apache24\bin目录,这个目录下的httpd.exe就是服务器的执行程序,根据官网上说的,我们首先把Apache作为应用软件服务安装到系统服务中,运行命令:

  httpd -k install -n "ApacheServer"

  执行完这条命令后,如果没什么问题,就把Apache服务安装成功了,服务名为:ApacheServer这个我们可以自定义,如果只执行

  httpd -k install

  这样默认安装Apache服务名为:Apache2.4

  如果安装的时候提示,OS 5拒绝服务,AH00369这样的错误,那么原因就是我们没有权限执行操作,那么需要进入C:\Windows\System32目录下,右击cmd.exe选择以管理员方式运行即可,这样就安装成功了

  现在运行services.msc就可以看到刚安装好的服务了,并且默认为自动,就是随系统自动启动,不用我们每次再启动了,

  如果想手动启动或者关闭或者重启服务器有两种方法,一种是在系统服务中右键进行相应操作,比较简单

  另外就是使用命令行进行操作:

  启动:httpd -k start -n "ApacheServer"或者默认是httpd -k start

  停止:httpd -k stop -n "ApacheServer"或者httpd -k shutdown -n "ApacheServer"

  重启:httpd -k restart -n "ApacheServer"

  如果需要卸载服务就执行:httpd -k uninstall -n "ApacheServer"

  现在,我们访问http://localhost或者http://127.0.0.1如果可以看到 It works!的欢迎页,就是访问到了根目录下的index.html程序,那么Apache的环境就ok了

  下面需要配置让Apache可以运行php应用,现在需要去php官网下载运行环境

  过程就不细说了,Windows版本的网址为:http://windows.php.net/download

  这里可以下载最新版本的php7.0.1也可以下载php5.6.16这两个版本,但是不推荐下载更低的5.5、或者5.4版本

  

  这里根据操作系统位数一定要下载线程安全的版本,也就是Thread Safe的版本,下载完之后解压到C:/www下,我这里下载的是php7所以路径是:C:\www\php7

  

  然后我们在这个目录下会看到,php7apache2_4.dll这个就是Apache运行php的必要组件,现在继续打开Apache的配置文件httpd.conf

  把光标定位在最后,新起一行输入:LoadModule php7_module "C:/www/php7/php7apache2_4.dll"

  这行代码意思就是让Apache服务器引入php模块,从而可以支持php应用的web访问

  要注意,php5和php7是不一样的

  

  然后,继续添加一行

  AddType application/x-httpd-php .php .html .htm .php5

  这个是告诉Apache识别php文件的后缀,从而对这些后缀的应用进行解析,后面我们还可以添加.php7

  最后添加一行:PHPIniDir "C:/www/php7" 这行代码是告诉Apache服务器php.ini的目录,从而使服务器读取php的配置

  到现在就添加完了,如果是php7的话,有可能后续启动不成功,如果启动不成功,那么把PHPIniDir最后这行,放到LoadModule前面,就是先读取php.ini设置,在加载php模块,这样一般就成功了

  网上还有一种对于php7的配置方法是:

  phpinidir "C:/www/php7"
  loadfile "C:/www/php7/php7ts.dll"
  loadfile "C:/www/php7/ssleay32.dll"
  loadfile "C:/www/php7/libeay32.dll"
  loadmodule php7_module "C:/www/php7/php7apache2_4.dll"

  就是多三行代码,引入了3个文件,如果上面方法还是不行,可以试试这个方法,因为php7发布没多长时间,后续这些问题肯定会解决的

  到这里Apache服务器就全部配置完了,我们保存httpd.conf就行了

  现在进入php的目录,把php.ini-development复制一个副本,然后将副本重命名为:php.ini,然后打开php.ini开始配置

  我们找到; On windows:这行

  

  把下面的; extension_dir = "ext"前面的;注释去掉,然后把ext改成php下的ext目录,这里改成 extension_dir = "C:/www/php7/ext"目录,这个是指定php相应扩展的目录,如果这个不设置,那么只能使用php核心功能,另外的curl操作,mbstring字符串操作,xml操作,mysql操作都不能进行,所以这个必须设置好

  网上有些教程说把C:\www\php7;C:\www\php7\ext加入到环境变量中,这里只去掉分号就行了,还有的教程说把ext目录下的dll文件都复制到C:\Windows下,这里的注释不管他,原因很简单就是因为Windows本来就在环境变量当中,这些方法其实本质是一样的,都是让php通过php.ini配置文件读取ext扩展目录,所以我个人推荐第一种方法,就是直接在这里指定目录,简单并且灵活

  开启了这里之后,那么就需要有选择的开启相应的扩展了

  

  这里的这些扩展,去掉前面的;就是代表的开启,这里建议开启:

  php_mbstring.dll(截取中文标题或摘要时会发现太好用了)

  php_mysqli.dll

  php_mysql.dll(新版本废除了,用mysqli代替)

  php_curl.dll

  php_gd2.dll

  php_pdo_mysql.dll

  php_sockets.dll

  php_xmlrpc.dll

  这些扩展一般就够用了,后续如果需要的话再具体开启

  另外,时区的配置也可以改一下,作用和在程序里面用date_default_timezone_set()函数设置相同,默认是UTC格林威治时间,和北京时间相差8个小时

  

  这里可以改成:date.timezone = Asia/Shanghai或者date.timezone = PRC

  到这里,我们保存php.ini,然后重启Apache服务器,测试phpinfo()就可以了

  到现在Apache服务器和php环境都配置完成了,更详细的个性化配置等,需要根据项目需要来具体配置,这个后续再不断地补充,目前这个环境一般的开发测试是没问题的

  另外关于MySQL数据库基本上是独立的,单独安装的,只要我们安装好之后,就可以用php或者其他编程语言建立连接去访问数据库中的数据了,具体配置也是相对独立的

Windows下配置Apache服务器并支持php的更多相关文章

  1. Windows下配置Apache服务器

    第一步:下载最新Apache. 下载网址:http://www.apachehaus.com/cgi-bin/download.plx 第二步:把下载文件解压缩到一个工作目录.D:\Apache 第三 ...

  2. windows下配置tomcat服务器的jvm内存大小的两种方式

    难得遇到一次java堆内存溢出(心里想着,终于可以来一次jvm性能优化了$$) 先看下报错信息, java.lang.OutOfMemoryError: GC overhead limit excee ...

  3. windows下配置apache+php环境

    PHP安装 由于windows下php扩展5.6的多余7.0,故以php5.6为开发环境.如果对扩展要求不高,可以使用php7,安装过程类似. 约定: 环境安装目录: D:/phpsetup/ |-- ...

  4. Windows下配置Apache+PHP跑Wordpress拾遗

    首先,我很少这么做,因为一旦有跑WAMP的需求,我就直接下一个wamp的安装包就可以了,市面上数不胜数,我一直用的是EasyPHP,不是说它有多好,而是很多年前第一次用后没什么问题,就一直用下来了.这 ...

  5. Windows下配置Nginx使之支持PHP(转)

    平台描述:Windows下,使用PHP套件 xampp,因为是测试玩,所以没在服务器 Linux 环境中配置. 1. 首先,将 nginx.conf 中的 PHP 配置注释去掉. 01 # pass ...

  6. Mac下配置Apache服务器

    有的时候,我们需要在内网工作组中分享一些文件或是后台接口没有及时给出,你又想要模拟真实数据,直接在项目里创建plist也可以做到这种需求,但难免让工程变得冗余且看起来比较Low.这个时候就看出配置本地 ...

  7. Windows 下配置 Apache 支持 https

    1.打开cmd ,输入  F: // 切换到Apache安装路径,我的Apache安装目录在 F盘 2.cd F:\Apache\bin 3.set "openssl_conf = F:\A ...

  8. Windows下配置Git服务器和客户端 超全

    为了配合Redmine使用,特地用Git来做版本控制. Git Candy© 是一个基于ASP.NET MVC的Git分布式版本控制平台,Git Candy的目标是轻松干掉Bonobo,逐渐追赶Git ...

  9. Windows下配置Tomcat服务器

    Tomcat服务器是Apache开源基金会的一个项目,tomcat不仅能作为静态文件的服务器,也可以作为JSP/Servlet的web容器,而且使用广泛,性能也不错,那么下面来配置一个基本的基于tom ...

随机推荐

  1. Java基础--重写(Overriding,覆盖)-重载(Overloading)

    多态性: Java的方法重载,就是在类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义.调用方法时通过传递给它们的不同参数个数和参数类型来决定具体使用哪个方法 Java的方法重写, ...

  2. Java 集合类详解(含类图)

    0.参考文献 此图中蓝色为抽象类.深红色表示接口(Arrays除外).绿色表示具体容器类 1.java集合类图 1.1 1.2 上述类图中,实线边框的是实现类,比如ArrayList,LinkedLi ...

  3. UVa 437 The Tower of Babylon

    Description   Perhaps you have heard of the legend of the Tower of Babylon. Nowadays many details of ...

  4. hdu 1008 Elevator

    Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Description The hig ...

  5. iOS系统navigationBar背景色,文字颜色处理

    - (void)setRightBarButtonItem { // Create done Button UIBarButtonItem *doneButton = [[UIBarButtonIte ...

  6. 基于REST架构的Web Service设计

    来自: http://www.williamlong.info/archives/1728.html 先前我曾经介绍过利用Apache Axis实现基于SOAP的Web Service实现技术和相关代 ...

  7. pthread 学习系列 case2-- pthread_mutex_t

    许多互斥对象 如果放置了过多的互斥对象,代码就没有什么并发性可言,运行起来也比单线程解决方案慢.如果放置了过少的互斥对象,代码将出现奇怪和令人尴尬的错误.幸运的是,有一个中间立场.首先,互斥对象是用于 ...

  8. win7打开网页老是提示下载网页解决办法

    方法:我的系统是windows 7 旗舰版, 解决方法可以自己手动去修复,方法是进入命令窗口. 开始--运行--cmd--sfc.exe--sfc/scannow   修复一下!

  9. C语言strchr()函数:查找某字符在字符串中首次出现的位置

    头文件:#include <string.h> strchr() 用来查找某字符在字符串中首次出现的位置,其原型为:    char * strchr (const char *str, ...

  10. C++构造函数详解及显式调用构造函数

    来源:http://www.cnblogs.com/xkfz007/archive/2012/05/11/2496447.html       c++类的构造函数详解                  ...