zoukankan      html  css  js  c++  java
  • win7配置PHP开发环境遇到的一些挫折

    1.80端口被占用,apache启动不了.

    问题描述:默认安装apache,安装完成后可以自启动apache,但是设置手动启动时会报错,日志显示80端口被占用,修改配置文件改为81端口,可正常手动启动。自启动是因为启动顺序中apache优先,抢先占用了80端口.

    排查过程:cmd窗口输入netstat –ano,发现80端口已被监听,PID=4,然后在任务管理器查询到PID是系统进程,所以只有网上搜索‘80端口被NT kernel & System 占用(pid=4)’然后找到了解决方案.

    解决方法:CMD窗口net stop http然后选择y最后输入sc config http start= disabled(注意disabled前面有一个空格),然后就可以正常启动默认配置的apache.

    2.apache支持php.

    问题描述:我的apache版本应该是2.2安装文件是:httpd-2.2.25-win32-x86-openssl-0.9.8y.msi

    ①、我的php版本是5.5.9.下载文件是:php-5.5.9-Win32-VC11-x86.zip(Thread Safe ),不是这么版本就没有需要的文件php5apache2_4.dll,然后按照一般的教程去配置,会报错:httpd.exe: Syntax error on line 131 of D:/Apache2.2/conf/httpd.conf: Cannot load D:/PHP/php5apache2_4.dll into server: xd5xd2xb2xbbxb5xbdxd6xb8xb6xa8xb5xc4xb3xccxd0xf2xa1xa3

    这个核查到的原因是需要安装文件vcredist_x86.exe对应2012版本。

    安装后还是无法启动。没有任何错误日志,然后怀疑是php5apache2_4.dll的问题。

    解决办法:更换php版本。php-5.4.25-Win32-VC9-x86.zip(Thread Safe )另外安装vcredist_x86.exe对应2008版本(将此版本运行库卸载了也成功了,但是2012未卸载)。然后就成功启动了。

    非常有意义的参考网站有:教程问题解决办法

    最有意义的参考内容:

    1、Apache2.0对应的PHP模块为 php5apache2.dll

    2、Apache2.2对应的PHP模块为 php5apache2_2.dll

    3、Apache2.4对应的PHP模块为 php5apache2_4.dll

    所以,Apache/PHP的搭配有以下几种情况:

    1、php5.2支持Apache2.0和Apache2.2;

    2、php5.3、php5.4同时支持Apache2.2和Apache2.4;

    3、php5.5只支持Apache2.4

    php版本与运行库对应情况。

    php5.5使用的编译器是vc11,php5.4和php5.3的是vc9,php5.2是vc6。同时还要注意是x86版本,还是x64版本。目前只有php5.5提供x64版本,其他都只有x86版本。

    vc11运行库x86/x64版本:

    vc10运行库x86版本:

    vc10运行库x64版本:

    vc9运行库x86版本:

    vc9运行库x64版本:

    当php和apache的版本对应正确后,将手工安装的vc运行库全部卸载了,照样可以正常启动,目前断定配置环境最重要的是php和apache的版本对应。

  • 相关阅读:
    为什么我的datagridview中显示的日期总把时间也显示出来了,请问怎样才能让它不显示呢?
    .net加载到vb 进程
    <转>RowState 介绍
    sqlserver 一个排序问题
    sqlserver 中含有某字符串
    网站链接的几种方式
    SQL Server 用SQL语句查找某个表的触发器
    获取文件名后缀
    mysql 排重查询
    while循环中不支持循环使用curl
  • 原文地址:https://www.cnblogs.com/snackuo/p/3547548.html
Copyright © 2011-2022 走看看