CentOS下nginx php mysql 环境搭建

CentOS下搭建PHP运行环境。

首先是在虚拟机上装好一个命令行的CentOS,如果只是弄服务器的话,不要装图形界面,会比较卡。

一、安装编译工具及库文件

yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel

一个漫长的等待过程。36个安装包(64M),45个安装任务。

二、首先要安装 PCRE

PCRE 作用是让 Ngnix 支持 Rewrite 功能。

可以使用yum -y install pcre来进行安装。

先 cd /usr/src/

1、下载 PCRE 安装包,下载地址: http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

提示 wget:command not found; 安装wget.

yum -y install wget

2、解压安装包:

tar zxvf pcre-8.35.tar.gz

3、进入安装包目录

cd pcre-8.35

4、编译安装 

./configure
make && make install

5、查看pcre版本

pcre-config --version
rpm -ql pere

查看安装目录

安装 Nginx

可以直接只用yum -y install ngnix来进行安装.

1、下载 Nginx,下载地址:http://nginx.org/download/nginx-1.9.2.tar.gz

wget http://nginx.org/download/nginx-1.9.2.tar.gz

2、解压安装包

tar zxvf nginx-1.9.2.tar.gz

3、进入安装包目录

cd nginx-1.9.2

4、编译安装

这儿根据具体的pcre的具体位置填--with-pcre。

最好先用./configure --help查看自己需要添加的参数。

./configure --prefix=/etc/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/src/pcre-8.35
make
make install

5、查看nginx版本

cd /etc/nginx/sbin/
./ngnix -v
nginx version: nginx/1.9.2

6、添加nginx环境变量

vi /etc/profile

#在文件末尾加上:

PATH=/etc/nginx/sbin:$PATH
export PATH

#添加完之后,保存文件

source /etc/profile

如果你不小心改错了,忽然发现很多Linux的命令都不能用了,那就用

export PATH=/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11R6/bin

vi etc/profile

改回原来的文件。

到此,nginx安装完成。

检查配置文件ngnix.conf的正确性命令:

/etc/nginx/sbin/nginx -t

修改 Nginx 配置文件

在本地修改好文件,然后上传到服务器。需要安装xsheel上传下载支持,执行命令

yum install lrzsz

然后用rz命令上传本地修改好的 nginx.conf 文件

#运行用户
user www-data;
#启动进程,通常设置成和cpu的数量相等
worker_processes 1;

worker_rlimit_nofile 65535;

#工作模式及连接数上限
events {
    use   epoll;             #epoll是多路复用IO(I/O Multiplexing)中的一种方式,但是仅用于linux2.6以上内核,可以大大提高nginx的性能
    worker_connections  1024;#单个后台worker process进程的最大并发链接数
    #multi_accept on; 
}

#设定http服务器,利用它的反向代理功能提供负载均衡支持
http {

        ##
        # Basic Settings
        ##
        #设定mime类型,类型由mime.type文件定义
        include       /etc/nginx/mime.types;
        default_type  application/octet-stream;
        
        #sendfile 指令指定 nginx 是否调用 sendfile 函数(zero copy 方式)来输出文件,对于普通应用,
        #必须设为 on,如果用来进行下载等应用磁盘IO重负载应用,可设置为 off,以平衡磁盘与网络I/O处理速度,降低系统的uptime.
        sendfile on;
        tcp_nopush on;
        tcp_nodelay on;
        uwsgi_pass_request_body off;
        keepalive_timeout 15;    #连接超时时间
        types_hash_max_size 2048;
        # server_tokens off;

        # server_names_hash_bucket_size 64;
        # server_name_in_redirect off;
        
        #设定请求缓冲
        client_max_body_size 50M;
        client_header_buffer_size    2k; #生什么时候出现瓶颈?
        large_client_header_buffers  4 16k;
    
        ##
        # Logging Settings
        ##
        log_format foo '$remote_addr - $remote_user [$time_local]  '
                    '"$request" $status $request_length/$body_bytes_sent '
                    '"$http_referer" "$http_user_agent"';
        access_log /data/log/nginx/access.log;
        error_log /data/log/nginx/error.log;

        fastcgi_connect_timeout 300;
        fastcgi_send_timeout 300;
        fastcgi_read_timeout 300;
        fastcgi_buffer_size 128K;
        fastcgi_buffers 4 256K;
        fastcgi_busy_buffers_size 256K;
        fastcgi_temp_file_write_size  256K;
        fastcgi_intercept_errors on;
        ##
        # Gzip Settings
        ##
        
        #开启gzip压缩
        gzip on;
        gzip_disable "msie6";
        gzip_vary on;
        gzip_proxied any;
        gzip_comp_level 6;
        gzip_buffers 16 8k;
        gzip_http_version 1.1;
        gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

        ##
        # Virtual Host Configs,where server defined
        ##
        include /etc/nginx/conf.d/*.conf;
        #include /etc/nginx/sites-enabled/*;
}
mkdir conf.d

在conf.d中新建一个server配置文件

添加www-data的用户  (nginx: [emerg] getpwnam(“www”) failed)

useradd -g www www-data

启动 Nginx

Nginx 启动命令如下:

/etc/nginx/sbin/nginx

Nginx 其他命令

以下包含了 Nginx 常用的几个命令:

/etc/nginx/sbin/nginx -s reload            # 重新载入配置文件
/etc/nginx/sbin/nginx -s reopen            # 重启 Nginx
/etc/nginx/sbin/nginx -s stop              # 停止 Nginx

PHP 编译安装

下载php:  http://php.net/get/php-5.6.26.tar.gz/from/a/mirror

具体版本可以去 http://php.net 查看,选择自己想要的版本进行下载

2、解压安装包

tar zxvf php-5.6.26.tar.gz

3、进入安装包目录

cd php-5.6.26

4、编译安装

# ./configure --prefix=/usr/local/php
--with-config-file-path=/usr/local/php/etc
--with-mysql=/usr/local/mysql
--with-mysqli=/usr/local/mysql/bin/mysql_config
--with-iconv-dir=/usr/local
--with-freetype-dir
--with-jpeg-dir
--with-png-dir
--with-zlib
--with-gd
--enable-gd-native-ttf
--with-libxml-dir=/usr
--enable-xml
--disable-rpath
--enable-discard-path
--enable-safe-mode
--enable-bcmath
--enable-shmop
--enable-sysvsem
--enable-inline-optimization
--with-curl
--with-curlwrappers
--enable-mbregex
--enable-fastcgi
--enable-fpm
--enable-force-cgi-redirect
--enable-mbstring
--with-mcrypt
--with-openssl
--with-mhash
--enable-pcntl
--enable-sockets
--with-ldap
--with-ldap-sasl
--with-xmlrpc
--enable-zip
--enable-soap
--without-pear
make make install

 

posted @ 2016-08-26 20:27  悠悠uusama  阅读(642)  评论(0编辑  收藏  举报