win7下手动配置apache+ php + mysql 记

原本想学学php,因而就想搭建web服务器和sql环境,结果浪费掉了很多时间。大体的总结下,也算是长个记性。 php

使用的安装包分别是httpd-2.2.22-win32-x86-no_ssl .msiphp-5.2.5-Win32.zipmysql-installer-community-5.5.28.3.msi,很显然用的还算是比较新的安装包。安装apache仍是比较顺利的,一路安装下来,默认监听本机全部ip的80端口,固然包括回环地址, 接着解压php到指定文件夹,接着安装mysql,打开安装目录下的httpd.conf文件,作以下调整: html

ServerRoot "D:/Apache2.2"  服务器安装根目录 mysql

DocumentRoot "D:/phpWeb"  修改成本身的网站根目录 web

# This should be changed to whatever you set DocumentRoot to.
<Directory "D:/phpWeb">      与上一步进行同步修改 sql

# DirectoryIndex: sets the file that Apache will serve if a directory
# is requested.
<IfModule dir_module>         设置默认的被请求文件
    DirectoryIndex index.php index.html
</IfModule>

LoadModule php5_module "D:/php/php5apache2_2.dll"   以模块的方式加载php,注意此处的php5apache2_2.dll对应的apache 版本
LoadFile "D:/php/php5ts.dll"   手动加载php动态连接库 或者 把这两个文件放到system32文件目录下
LoadFile "D:/php/libmysql.dll" 加载mysql动态连接库
PHPIniDir "D:/php"                 非必要的配置
AddType application/x-httpd-php .php .html .htm   服务器端支持动态文件类型
数据库

保存修改后,测试apache,重启apache服务器,在浏览器中输入localhost or 回环地址,页面显示 “It works !”到此说明,apache工做了。 apache

测试php,在phpWeb目录里编辑一个index.php 的文件,内容为<?php   phpinfo(); ?>,重复测试apache服务器的操做,页面显示php的配置信息,查看是否包括sql模块,很想然没有,由于php默认是不加载mysql模块的。而后修改php.ini 文件,主要改动点以下: 浏览器

extension_dir = "D:/php/ext"  扩展dll库的位置
………………
extension=php_mysql.dll     打开mysql的扩展 服务器

对于php.ini的修改至关郁闷,网上找了不少也作了各类修改,似懂非懂的就去尝试,后来都无论用。 想一想mysql是否安装成功呢,开始用命令行查看,先看端口3306端口是否处于监听状态,使用netstat -a命令,再使用mysql workbench 测试与数据库的链接是否成功,结果成功说明mysql安装没有问题,mysql 的配置文件是my.ini ,暂时不用动,默认的配置能够工做。 因而问题出在php与mysql的衔接处,问题确定出在php.ini文件。   app

开查php.ini,仍是先看看phpinfo()给出的信息吧,看来看去怎么没有mysql模块,开始怀疑我以前是否打开了配置信息里的mysql 扩展。God,打开的居然是extension=php_mssql.dll。此处省略无数字。 

Wahtever, 问题总算找到,测试一下,瞬间OK,欲哭无泪。可是回顾整个过程,时间主要浪费在了细小的错误上。 总结教训: 面对问题不能不问百度google闭门造车但也不能盲信盲从 ; 面对问题更多的是持续关注问题,本身分析问题。

下一步详细分析httpd.conf  php.ini my.ini ,灵活配置,并对web服务器和数据库服务器进行性能调优,而后移植网站到新崛起的Nginx web服务器等。貌似有点偏题了,固然主要目的仍是学习可爱的PHP.

相关文章
相关标签/搜索