zoukankan      html  css  js  c++  java
  • Windows下配置Apache服务器并支持php

    转自:http://www.cnblogs.com/freeweb/p/5056979.html

    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:wwwApache24in目录,这个目录下的httpd.exe就是服务器的执行程序,根据官网上说的,我们首先把Apache作为应用软件服务安装到系统服务中,运行命令:

      httpd -k install -n "ApacheServer"

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

      httpd -k install

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

      如果安装的时候提示,OS 5拒绝服务,AH00369这样的错误,那么原因就是我们没有权限执行操作,那么需要进入C:WindowsSystem32目录下,右击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:wwwphp7

      

      然后我们在这个目录下会看到,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:wwwphp7;C:wwwphp7ext加入到环境变量中,这里只去掉分号就行了,还有的教程说把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或者其他编程语言建立连接去访问数据库中的数据了,具体配置也是相对独立的

  • 相关阅读:
    Dubbo监控中心
    Dubbo 提供者配置&测试
    IDEA中pom.xml依赖另一个项目
    MBG
    查询优化技术之多级缓存
    分布式扩展流程
    Redis取值时取出的是HashMap
    linux执行sql
    Git的使用
    405
  • 原文地址:https://www.cnblogs.com/kxxx/p/7651932.html
Copyright © 2011-2022 走看看