标签: apache

  • Linux下apache2.2.4+php5.5.5搭建

    版本 

    CentOS 6.4  //最小安装;要解决很多依赖包建议yum进行安装

    httpd-2.4.6.tar.gz

    php-5.5.5.tar.gz

     

    步骤:

    1) 安装所需要的一些库   

    //可以直接进入第二步,安装时出现所需库未安装返回第一步

    2) 安装apache

    3) 安装php

    4) 修改配置文件

    5) 测试

     

    一:安装库

    安装时可能出现一些软件包未安装 比如:APR APR-util PCRE  C++ 或其他库

    安装方法如下:

    ① yum  安装   //yum install -y 包名

    ② tar  安装 如下

    tar zxvf  apr-1.4.8.tar.gz 

    cd apr-1.4.8

    ./configure –prefix=/usr/local/apr               //注意路径 安装httpd时免得找不到

    make

    make install

    tar zxvf apr-util-1.5.2.tar.gz 

    cd apr-util-1.5.2

    ./configure –prefix=/usr/local/apr-util –with-apr=/usr/local/apr

    make

    make install

                   

    yum install -y gcc gcc-c++

    tar zxvf pcre-8.33.tar.gz 

    cd pcre-8.33

    ./configure –prefix=/usr/local/pcre

    make

    make install

     

    二:安装apache

    tar zxvf  httpd-2.4.6.tar.gz   

    cd httpd-2.4.6

    ./configure –prefix=/usr/local/httpd –with-apr=/usr/local/apr –with-apr-util=/usr/local/apr-util –enable-module=so –with-pcre=/usr/local/pcre

    make

    make install

     

    三:安装PHP

    tar zxvf php-5.5.5.tar.gz

    cd php-5.5.5

    ./configure  –with-apxs2=/usr/local/apache/bin/apxs  –prefix=/usr/local/php –with-config-file-path=/usr/local/php  –with-mysql=mysqlnd

    make

    make install

     

    四:修改配置文件

    Apache

    配置文件在/usr/local/httpd/conf/httpd.conf

    网页文件在/usr/local/httpd/htdocs/

    php 

       配置文件在 /etc/php.ini

    cp /xxx(php安装文件的目录)/php.ini-development  /etc/php/ini

    vi  /usr/local/httpd/conf/httpd.conf

    确保以下字符串是否存在

    LoadModule php5_module modules/libphp5.so

    在<IfModule>…</IfModule>之间添加 AddType application/x-httpd-php .php .phtml .php3 .inc

    在/usr/local/apache/htdocs/ 下创建以下php文件进行测试

    <?php

    phpinfo()

    ?>

     

    五:配置为系统服务

    # cp /usr/local/httpd/bin/apachectl /etc/rc.d/init.d/httpd

    然后 vi /etc/rc.d/init.d/httpd 添加(# !/bin/sh下面)

    # chkconfig: 2345 50 90

    # description: Activates/Deactivates Apache Web Server

    保存退出

    最后,运行chkconfig把Apache添加到系统的启动服务组里面:

    # chkconfig –add httpd

    # chkconfig –level 2345 httpd on

    然后再service httpd start

  • 在linux中扩展php中的pdo_mysql模块(编译扩展安装)

    linux版本: centOS 6.4

    php版本: php 5.4.15

    PHP编译安装之后可能需求扩展一些组件比如pdo_mysql,gd什么的,好在php5中有一个phpize工具可以帮助我们轻松的扩展PHP而不需要重新编译PHP。

    首先我们使用命令查看一下已经安装的php扩展模块:
    /usr/local/php/bin/php -m

    进入PHP源码包ext/pdo_mysql目录执行命令:
    ./configure –with-php-config=/usr/local/php/bin/php-config

    然后make和make install

    接着重启您的apache服务器, 再使用命令 /usr/local/php/bin/php -m 即可看到已经添加的对应的pdo_mysql模块了.

  • 在vps上搭建linux+apache+wordpress,解决内存占用无限大的问题.

    本来我的服务器上就只有 linux+mysql+lighttpd+tomcat,

    后来因为想搭建个自己的博客, 所以在服务器中装上了apache+php.

    在此之前, 我768mb内存只占用400+M而已, 后来成功装上了wordpress后,

    发现内存占用异常的高, 服务器的内存都没了, 甚至影响到运行在tomcat容器上的客户网站运作

    后来经过各种排除, 得出 wordpress 运作的情况之下, 每次刷新wordpress, 内存就增加10-20MB, 直到爆满.

    后来搜索各种资料, 在wordpress群里还被人笑我的垃圾openVPS的服务器, 说啥的什么xen之类的啦, 说我的垃圾还把问题赖在wordpress上.

    总之, 凭着一贯解决问题的经验告诉我, 不会是这个原因.

    中间很多经历省略, 反正最终找到原因是apache的配置问题,

    我的apache2.4默认配置文件中没有限制MaxConnectionsPerChild导致的,

    于是在conf.cfg中添加 MaxConnectionsPerChild = 10 后发现问题解决了.

    当然, MaxConnectionsPerChild 要根据个人的需要而设定,

    反正我 MaxConnectionsPerChild = 100 的时候, apache的内存就占200多M…

    自己看着办吧…

    后来我再在群上说不是那个笑我的vps的人所说的问题, 原来只是 MaxConnectionsPerChild 没有限制而已, 那个当事人立刻哑口无言…

    另外说一下题外话:

    我一贯都不喜欢一些人, 总以为自己懂得很多, 然后就妄下定论并把自己定位的高高在上.

    反正我做人是这样, 想问题, 必须充分考虑各种可能性, 不在自己不清楚具体状况的时候妄下定论, 这种情况下, 其实多加几个字 “在我的认知下” 会看得出一个人平时思考的深度, 当然, 装逼的除外.