zoukankan      html  css  js  c++  java
  • centos 5.5 安装 lnmp

    centos5.5 安装 lnmp,一定要事先选好版本安装,建议自己下载安装。

    1.相关文件目录:

    nginx: /www/nginx/下面
    mysql: /usr/share/mysql /usr/bin/mysql (安装时没有配置路径)
    php : /usr/local/php53

    2

    A) nginx
    启动:/www/nginx/sbin/nginx -c /www/nginx/conf/nginx.conf
    查看: ps -ef | grep nginx
    停止:强制停止所有Nginx进程 ps -ef | grep nginx ==> pkill –9 nginx(推荐)
    Nginx的平滑重启(先启动,然后查看主要进程号,才能重启)
    kill -HUP Nginx主进程号 或者 kill一HUP `/usr/local/webserver/nginx/logs/nginx.pid`
    判断Nginx配置文件是否正确:
    /usr/local/webserver/nginx/sbin/nginx –t -c /usr/local/webserver/nginx/conf/nginx.conf

    B) 卸载 mysql 和 安装新mysql
    #rpm -qa|grep mysql 发现显示没有安装mysql。先用 yum remove mysql但是mysql已经安装了,所以,我的方法是查询:whereis mysql
    ||然后分别删除 /etc/init.d/下面的my.cnf和mysql
    和目录下面的所有mysql文件,这样才能卸载干净,前提最好是 先停止运行mysql服务。
    1 mysql client客户端 | server 服务器安装 即可。(wget http下载包)
    2 启动:找到目录mysqld ,一般位于 /usr/bin / ====> service mysqld start(或者restart)
    3 使用:mysql -u root -p
    4 关闭服务器: 在此目录下面,service mysqld stop
    C)
    php这个命令是删除不干净的:yum remove php
    必须强制删除
    #rpm -qa|grep php
      卸载Mysql
      # rpm -qa | grep mysql
      # yum remove mysql
      卸载Apache
      # rpm -qa | grep httpd
      # yum remove httpd
      卸载PHP
      # rpm -qa | grep php
      # yum remove php

    解决依赖包问题
    我们回过头来解决依赖包问题。我们的系统上缺少哪些包呢?按我在上面的configure 选项,下面几行命令中的包即是:
    [root@fsvps feng]# yum -y install libxml2-devel
    [root@fsvps feng]# yum -y install bzip2-devel
    [root@fsvps feng]# yum -y install libcurl-devel
    [root@fsvps feng]# yum -y install libjpeg-devel libpng-devel
    这个依赖列表是怎么知道的呢?运行configure,看提示什么错误,就安装相应包,记录下来这些包名就知道了。或者检查configure文档或源码,也是可以的,不过这个工作量更庞大。

    另外mcrype包centos源里没有的,要我们手工编译安装,步骤如下:

    cd build/
    mkdir mcrypt
    cd mcrypt
    wget http://nchc.dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.bz2
    tar xf libmcrypt-2.5.8.tar.bz2
    cd libmcrypt-2.5.8

    ./configure
    make
    make install
    其中 sourceforge.net 上的地址,如果不能下载,请点此从本站(path8.net)下载:libmcrypt-2.5.8.tar.bz2.zip [注]本文件是再次zip压缩的,使用时需先unzip 再tar x]

    或者你可以到http://mcrypt.sourceforge.net/下载,但要注意,我们需要的是 libmcrypt而不是mcrypt,这里很容易搞错。


    开始configure php源码
    现在应该对configure很熟悉了吧,用普通用户执行

    [feng@fsvps php-5.3.14]$ ./configure --prefix=/usr/local/php53 --with-config-file-path=/usr/local/etc --with-config-file-scan-dir=/usr/local/etc/php.d --mandir=/usr/local/man --enable-fpm --enable-calendar --with-mcrypt --enable-ftp --with-zlib --with-bz2 --with-curl --with-gd --enable-exif --with-jpeg-dir --with-png-dir --with-freetype-dir --enable-mbstring --with-mysql --with-mysqli --with-pdo-mysql --enable-zip --enable-bcmath --with-bz2

    这一步要花几分钟时间,不出意外将出现如下消息:

    +--------------------------------------------------------------------+
    | License: |
    | This software is subject to the PHP License, available in this |
    | distribution in the file LICENSE. By continuing this installation |
    | process, you are bound by the terms of this license agreement. |
    | If you do not agree with the terms of this license, you must abort |
    | the installation process at this point. |
    +--------------------------------------------------------------------+

    Thank you for using PHP.
    按下来,make,这一步更慢,可能要二十分钟,耐心等,或者做点其它事情。

    看到如下消息,就是完成了。

    Build complete.
    Don't forget to run 'make test'。
    可以执行一下make test 检测一下,不过一般没有必要,切换到root身份运行make install安装。

    [root@fsvps php-5.3.14]# make install
    最好记下来这里的消息,它是php的几个重要配置文件的默认路径,下面用得着。

    配置并启动php-fpm进程
    php-fpm的配置文件位于/usr/local/php53/etc/,这里有个php-fpm.conf.default,用它复制出php-fpm.conf

    [root@fsvps php-5.3.14]# ls -l /usr/local/php53/etc/

    -rw-r--r-- 1 root root 1172 7月 1 07:20 pear.conf
    -rw-r--r-- 1 root root 20891 7月 1 07:20 php-fpm.conf.default

    [root@fsvps php-5.3.14]# cp /usr/local/php53/etc/php-fpm.conf{.default,}
    修改php-fpm.conf如下几处:

    (约第25行) pid = /var/run/php-fpm.pid
    (约第32行) error_log = /var/log/php-fpm.log
    (约第190行) pm = static

    启动php-fpm进程

    [root@fsvps php-5.3.14]# /usr/local/php53/sbin/php-fpm
    执行后,没有任何输出。如果有错误请查看php-fpm的日志文件 /var/log/php-fpm.log

    整合 PHP 与 nginx
    直到现在,我们的nginx还是只能处理静态文件,我们接下来要做的是:让nginx把对.php文件的请求,转给php-fpm来处理。

    打开nginx配置文件,在server{...}节点里面,有这样一行 # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 ,下面的 location ...{...}节点取消注释,改成如下形式(修改部分使用红字加粗):

    location ~ .php$ {
    root html;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME /var/www/html/default$fastcgi_script_name;
    include fastcgi_params;
    }

    保存,检查配置nginx -t,无误后重新加载nginx配置 nginx -s reload

    写一个php程序文件 /var/www/html/default/phpinfo.php 内容为:
    <?php
    phpinfo();
    ?>

    用浏览器通过ip地址访问phpinfo.php,看到你亲自编译的nginx+php-fpm在工作了吧。

  • 相关阅读:
    以后努力,每天写博客!
    无题
    Fainting
    明天任务
    hdu 4022 Bombing(map)
    codeforces 1216E1 Numerical Sequence (easy version) (前缀和/二分)
    CodeForces 1176E Cover it!
    codeforces 1234D Distinct Characters Queries
    codeforces 1249C2 Good Numbers (hard version)
    codeforces 913B Christmas Spruce(树)
  • 原文地址:https://www.cnblogs.com/legend-song/p/3755229.html
Copyright © 2011-2022 走看看