刚开始安装php,这次我们是从源码安装,不过安装php之前得先安装一些依赖包

yum -y install libmcrypt-devel mhash-devel libxslt-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel

然后开始安装php以及对应的插件等

wget http://cn2.php.net/get/php-5.4.29.tar.gz/from/this/mirror
tar zxvf php-5.4.29.tar.gz
cd php-5.4.29
./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  --with-openssl&&make&&make install

当然有时候可能因为其它原因会提示缺少mcrypt这个库,这个时候就需要独立下载这个文件安装

wget http://softlayer.dl.sourceforge.net/sourceforge/mcrypt/libmcrypt-2.5.8.tar.gz
tar -zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8
./configure --prefix=/usr/local&make&make install

把上面这个依赖库安装上再执行上面的那个编译安装php命令,把php安装上。

启动php-fpm

/usr/local/php/sbin/php-fpm

重启php-fpm

先杀掉php-fpm进程,然后重新启动即可

然后再做一下配置文件

cd /usr/local/php/etc/
cp php-fpm.conf.default php-fpm.conf
再对php-fpm.conf的内容进行修改,将「user = nobody」,「group = nobody」分别改为「user = www」,「group = www」
保存后需要保证名为「www」的用户以及组存在,因此在命令行执行下列语句:
groupadd www
useradd -g www www

安装上php之后就开始安装nginx

先下载对应的文件

wget http://nginx.org/download/nginx-1.9.0.tar.gz
tar -xvzf nginx-1.9.0.tar.gz
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-pcre=/home/reetsee/download/pcre-8.34 --with-zlib=/home/reetsee/download/zlib-1.2.8 --with-openssl=/home/reetsee/download/openssl-1.0.1g&&make&&make install

安装完之后建立软链接

ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx

这样每次在那个目录都可以启动nginx,然后如果需要重启nginx的话可以直接执行命令nginx -s reload

更多的命令可以直接nginx -h查看里面的说明

下面贴上自己的/usr/local/nginx/etc/nginx.conf的配置文件

 server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   /usr/local/nginx/html;
            index  index.html index.htm index.php;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /usr/local/nginx/html;
        }

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ .php$ {
        #    proxy_pass   http://127.0.0.1;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ .php$ {
            root   /usr/local/nginx/html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;
            include        fastcgi_params;
        }
        include vhost/*.conf

这个是其中配置的一部分,其它的都是默认的。

还有就是虚拟主机的配置(就是在配置文件里面增加vhost/*.conf),在vhost里面增加的文件都要以域名作为文件名。如vhost底下的zhuang33.com.conf。那么他里面的配置是怎样的呢?

server {
        listen       80;
        server_name www.zhuang33.com;
        root /usr/local/nginx/html/1;
        index index.html index.php index.htm;
        error_page  400 /errpage/400.html;
        error_page  403 /errpage/403.html;
        error_page  404 /errpage/404.html;
        error_page  405 /errpage/405.html;
location ~ .php$ {
            root   /usr/local/nginx/html/1;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME /usr/local/nginx/html/1$fastcgi_script_name;
            include        fastcgi_params;
        }

}

然后重启nginx就可以生效了。当然我这边是做测试的,直接在html里面增加一个目录1,不过实际生产当中尽量要使得文件名有意义,就是一看文件名就清楚这个目录是那个域名底下的!

然后就是安装mysql

这个可以直接进行yum安装

yum install -y mysql-devel mysql

分享该文章:

相关文章:

  • 暂无相关文章