来自(http://www.cnblogs.com/yuan-yifan/archive/2012/05/06/2486556.html)
环境配置(window+Apache+Php)
如果配置过忘了,呢么紧跟红字引导哦~
如果很讨厌配置环境这种工作的朋友,呵呵,搜"XAMPP"吧~安装包里应有尽有哦!
Ok,想知其然,并知其所以然,继续.
I. 下载Apache(msi版)
a. 网络域,服务器,管理员的设置,不确定就随意吧~记住哦(这些信息可以在httpd.conf里修改)
b. 安装,打开apache目录下的conf文件,找到httpd.cong,加入对PHP模块的支持
Ø 在#LocalMoudle vhost_alias_moudle moudle/mod_vhost_alias.so的下面加代码
LoadMoudle php5_moudle X:/php/php5apache2_2.dll
效果:加载处理PHP的模块.
Ø 在AddType application/x-gzip .gz .tgz处加代码
AddType application/x-httpd-php .php
AddType application/x-httpd-source.php
效果:添加可识别PHP的MIME类型
Ø 在文件末尾添加以下代码
LoadFile X:\php\libmcrypt.dll
LoadFile X:\php\libmysql.dll
效果:支持libmcrypt和libmtsql
Ø 再在文件末尾添加以下代码
PHPIniDir "X:/php"
效果:设置php.ini的文件目录
Ø 注意: 只对于文件目录"\" 和"/"的区分~
一般引号里面是 /
引号外面是 \
Ø 另外还有一些说明在后面介绍
II. 下载PHP
a. php目录下的php.ini-xxxxxxxxx改为php.ini(后面再详细介绍一些设置)
b. 设置拓展文件目录
i. 找到extension_dir="./" --- 改为extension_dir="X:/php/ext"
c. 开启一些常用的拓展
Extension=php_gd2.dll
效果:支持GD绘图函数
Extension=php_mbstring.dll
Extension=php_mcrypt.dll
Extension=php_mysql.dll
效果:支持MySQL数据库
Extension=php_mysqli.dll
d. 添加环境变量
Path里添加"X:\php"
III. 运行PHP:
a. 启动Apache服务器吧~
b. 在apache的htdocs文件夹下建立phpinfo.php文件
c. 写如下代码 : <?php phpinfo(); ?>
IV. 注意事项:
a. Apache配置文件只在启动时调用,所以修改完一定要重启
b. Apache启动不了一般是因为配置文件有问题,常见的是有非法字符
c. Httpd.conf文件中没有指明可以支持.html时,就不要在html中嵌入php代码
d. 自己亲身体验!!8080端口不要被其他服务占用,否则默认生成不了服务器.
关于Apache的一些配置补充
• 重要参数
a. ServerRoot "X:/apache" //软件安装位置
b. PidFile logs/httpd.pid //父进程的进程号文件位置
c. Listen:8080 //端口号
d. ServerName //主站名称
e. ServerAdmin //管理员邮件地址
f. DocumentRoot "/…/web/" //主站点的网页存储位置
g. DirectoryIndex index.html index.php index.htm //主页文件设置
• 几个指令
a. X:\Apache2.2\bin> httpd -k install -n ApacheName
创建名字为的ApacheName服务
b. X:\Apache2.2\bin> httpd -k uninstall -n ApacheName
删除名字为的ApacheName服务
c. X:\Apache2.2\bin> httpd -n ApacheName -t
检查配置文件正确性
d. X:\Apache2.2\bin> httpd -k start/stop/shutdown/restart
基本操作
关于PHP配置指令
1. Php.ini是php全局配置文件
控制的行为
语言选项 安全模式 语法突出显示
杂项 资源限制 错误处理和日志
数据处理 路径和目录 文件上传
Fopen包装器 动态拓展 模块设置
对于端口被占的情况
1. 启动的时候问题来了!Service State里面是空的!
2. 这说明服务里面没有apache这个服务
3. 据说emial不是admin,就不会有服务---不知道真的假的,反正端口被占用就有问题
4. 先取得最高权限吧~(控制面板-用户账户和家庭安全-系统和安全-操作中心-更改用户账户控制设置-改为"从不通知")
5. 重启
6. cmd输入:cd /d X:\Apache2.2\bin转到指定目录
7. cmd执行:httpd.exe -k install -n apache2
8. ok