zoukankan      html  css  js  c++  java
  • linux和mac下的nginx和php的安装

    linux版本相关文档:http://www.nginx.cn/231.html

    一、安装php

    1、下载包,这里以php 5.3.10为例

    2、执行下面shell命令

    注意:下面配置的命令中第一行

    ./configure --prefix=/usr/local/php

    表示把php安装在/usr/local/php里面去,同理,下面的nginx。

    tar zvxf php-5.4.7.tar.gz
    cd php-5.4.7
    ./configure --prefix=/usr/local/php  --enable-fpm --with-mcrypt 
    --enable-mbstring --disable-pdo --with-curl --disable-debug  --disable-rpath 
    --enable-inline-optimization --with-bz2  --with-zlib --enable-sockets 
    --enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex 
    --with-mhash --enable-zip --with-pcre-regex --with-mysql --with-mysqli 
    --with-gd --with-jpeg-dir
    make all install

    3、其中,./configure的时候有可能会报错,不过一般都是依赖的文件缺少,所以需要sudo apt-get install xxx就行了

    configure报错1:xml2-config not found

    解决:需要安装libxml2,如果已经安装了还是报错,则需要安装它所依赖的,sudo apt-get install libxml2*

    configure报错2:mcrypt.h not found

    原因:这个库文件apt-get的时候一般会失败,所以要自己去下

    解决:

    cd /usr/local/src
    wget http://softlayer.dl.sourceforge.net/sourceforge/mcrypt/libmcrypt-2.5.8.tar.gz//貌似这个地址不行,补一个:http://download.chinaunix.net/download.php?id=11901&ResourceID=5917
    tar -zxvf libmcrypt-2.5.8.tar.gz
    cd /usr/local/src/libmcrypt-2.5.8
    ./configure --prefix=/usr/local
    make
    make install

    如果config成功了,大概会有这样的返回:

    make报错3make: *** [ext/dom/node.lo] Error

    解决方法:

    $ curl -o php-5.2.17.patch https://mail.gnome.org/archives/xml/2012-August/txtbgxGXAvz4N.txt      //记得修改为自己的php版本
    $ tar jxf php-5.2.17.tar.bz2 
    $ cd php-5.2.17
    $ patch -p0 -b <../php-5.2.17.patch 

    make成功大概是这个鬼样子:

    4、安装成功后,

    php.ini文件需要从源代码目录里面拷到安装目录里面去。。

    php-fpm.conf一般是在安装目录里面默认有的,在安装目录/etc/php-fpm.conf

    cp php源码目录/php.ini-development /usr/local/php/lib   //关于查找php.ini文件,无论LINUX还是WIN,都可以输出phpinfo(),然后在配置里面搜索查看

    cp过来后,一般要重启php-fpm。

    php-fpm重启命令:

    sudo 安装目录/sbin/php-fpm start //

     5、其他

    如果想要在其他地方直接敲入php命令就能执行php的话,需要把php执行命令文件cp到系统的bin文件目录下去

    操作如下:

    cp /usr/local/php/bin/php /usr/bin
    或者
    cp /usr/local/php/bin/php /usr/sbin

    二、nginx的安装

    相关文档:https://www.zybuluo.com/phper/note/73025

    step1、安装依赖库,zlib, pcre, openssl

    cd /lamp 
    wget http://zlib.net/zlib-1.2.8.tar.gz
    tar -zxvf zlib-1.2.7.tar.gz
    cd zlib-1.2.7
    ./configure
    make
    make install 
    wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.32.tar.gz//这个地址之前不能用,chinaunix有可以用的版本
    tar -zxvf pcre-8.21.tar.gz
    cd pcre-8.21
    ./configure
    make
    make install 
    wget http://www.openssl.org/source/openssl-1.0.2.tar.gz
    tar zxvf openssl-1.0.2.tar.gz
    cd openssl-1.0.2.tar.gz
    ./config  # 注意是config,不是configure
    make
    make install 

    step2、安装nginx

    wget http://nginx.org/download/nginx-1.7.10.tar.gz
    tar -zxvf nginx-1.7.10.tar.gz
    cd nginx-1.7.10.tar.gz
    
    //编译
    //!!!!注意这三个扩展的目录是源代码目录,不是安装目录!!!!//
    ./configure --prefix=/usr/local/nginx 
    --sbin-path=/usr/local/nginx/nginx 
    --conf-path=/usr/local/nginx/nginx.conf 
    --pid-path=/usr/local/nginx/nginx.pid 
    --with-http_ssl_module 
    --with-pcre=/lamp/pcre-8.32 
    --with-zlib=/lamp/zlib-1.2.7 
    --with-openssl=/lamp/openssl-1.0.2
    
    //安装
    1. [root@localhost nginx-1.7.10.tar.gz] make
    2. ...
    3. [root@localhost nginx-1.7.10.tar.gz] make install

    step3、配置

    !!!!!!!!!!!!!!!nginx的默认安装目录在/usr/local/nginx!!!!!!!!!!!

    启动nginx

    /usr/local/nginx/nginx

    重启nginx

    /usr/local/nginx/nginx -s reload

    配置文件目录:

    vi /usr/local/nginx/nginx/nginx.conf

    注意:此时访问localhost/index.html一般就可以访问nginx了

    三、配置nginx以支持php

    step:1、修改nginx.conf

        location / {
                 root   /usr/local/www;   #web的根目录
                 index  index.php index.html index.htm; # 加入index.php
            }
    
    
            location ~ .php$ {
                 root           /usr/local/www;          #web的根目录    //这个自己去建一个文件夹放项目
                 fastcgi_pass   127.0.0.1:9000;          #php-fpm的地址
                 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;   //这个很重要,不然安装完后,访问php会显示空白页,也不报错。
                include        fastcgi.conf;
             }    

    step2、测试

    在上面的web目录新建个文件测试

    sudo vi /usr/local/www/index.php;

    index.php随便写点啥,访问localhost/index.php就行了。注意要开启nginx和php-fpm,再说一遍命令:

    sudo /usr/local/nginx/nginx
    
    sudo /usr/local/php/sbin/php-fpm start    (有些版本不需要start)

    到此,php和nginx的配置已经完成了,下面是其他的配置

    四、开机自启动nginx

    开机启动配置文件:/etc/rc.local , 在该文件加入以下命令,注意sudo。

    /usr/local/nginx/nginx

    关于MAC版本,直接使用brew命令安装,简单粗暴

     mac版本相关文档:https://segmentfault.com/a/1190000002963355

    php安装过程中如果报错找不到zlib,可以先用brew安装zlib如果不行,在安装xcode-select --install

     php安装成功后会有如下介绍:

     其中如果想在命令行中切换各种Php版本,添加如下代码,而不是上图所示

    sudo vim ~/.bash_profile    
        export PATH="$(brew --prefix php54)/bin:$PATH"
    
    source ~/.bash_profile
  • 相关阅读:
    shipyard 管理swarm集群(附etcd发现服务方法)
    docker swarm 简易版
    SQL 优化:连接表查询优化
    【Java框架型项目从入门到装逼】第十四节 查询用户列表展现到页面
    【Java框架型项目从入门到装逼】第十三节 用户新增功能完结篇
    【Java框架型项目从入门到装逼】第十二节 项目分层
    【Java框架型项目从入门到装逼】第十一节 用户新增之把数据传递到后台
    【Java框架型项目从入门到装逼】第九节
    【Java框架型项目从入门到装逼】第八节
    【Java框架型项目从入门到装逼】第七节
  • 原文地址:https://www.cnblogs.com/alazalazalaz/p/5535808.html
Copyright © 2011-2022 走看看