Cenos7下nginx+mysql+php环境的搭建

首先更新系统软件

$ yum update

第一步:安装nginx

1.安装nginx

$ yum localinstall http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

2.安装nginx

$ yum install nginx

3.启动nginx

$ service nginx start

Redirecting to /bin/systemctl start  nginx.service

 

4.访问http://你的ip/

 

如果成功安装会出来nginx默认的欢迎界面

 

第二步:安装mysql

RPM安装MySQL

 

1.下载安装包

 

wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm

 

2.准备

rpm -ivh mysql-community-release-el7-5.noarch.rpm

3.安装mysql

yum install -y mysql-community-server

4.成功安装之后重启mysql服务:

service mysqld restart 
或 
systemctl restart mysqld.service

初次安装mysql是root账户是没有密码的:

  mysql -u root -p   遇到密码提示,回车即可进入

设置root密码的方法:

       quit;             退出mysql

   mysqladmin -u root password "root"     设置密码
 
进入mysql:
  mysql -u root -p
  Enter Password: root
 
设置mysql最大连接数:
  执行sql:set global max_connections = 3000; (重启mysql后失效)

第三步:PHP源码安装:

1. 下载源码包

 

wget http://cn2.php.net/distributions/php-5.6.3.tar.gz

 

2.解压

 

tar zxvf php-5.6.3.tar.gz

 

3.

cd php-5.6.3

 

4.安装php依赖包

yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl 
libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel
gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel

libmcrypt 和libmcrypt-devel 依赖包

yum  install epel-release      //扩展包更新包
yum  update                       //更新yum源
yum install libmcrypt libmcrypt-devel mcrypt mhash       就ok了

5.编译配置,这一步我们会遇到很多configure error,我们一一解决,基本都是相关软件开发包没有安装导致

 ./configure 
--prefix=/usr/local/php 
--with-config-file-path=/etc 
--enable-fpm 
--with-fpm-user=nginx  
--with-fpm-group=nginx 
--enable-inline-optimization 
--disable-debug 
--disable-rpath 
--enable-shared  
--enable-soap 
--with-libxml-dir 
--with-xmlrpc 
--with-openssl 
--with-mcrypt 
--with-mhash 
--with-pcre-regex 
--with-sqlite3 
--with-zlib 
--enable-bcmath 
--with-iconv 
--with-bz2 
--enable-calendar 
--with-curl 
--with-cdb 
--enable-dom 
--enable-exif 
--enable-fileinfo 
--enable-filter 
--with-pcre-dir 
--enable-ftp 
--with-gd 
--with-openssl-dir 
--with-jpeg-dir 
--with-png-dir 
--with-zlib-dir  
--with-freetype-dir 
--enable-gd-native-ttf 
--enable-gd-jis-conv 
--with-gettext 
--with-gmp 
--with-mhash 
--enable-json 
--enable-mbstring 
--enable-mbregex 
--enable-mbregex-backtrack 
--with-libmbfl 
--with-onig 
--enable-pdo 
--with-mysqli=mysqlnd 
--with-pdo-mysql=mysqlnd 
--with-zlib-dir 
--with-pdo-sqlite 
--with-readline 
--enable-session 
--enable-shmop 
--enable-simplexml 
--enable-sockets  
--enable-sysvmsg 
--enable-sysvsem 
--enable-sysvshm 
--enable-wddx 
--with-libxml-dir 
--with-xsl 
--enable-zip 
--enable-mysqlnd-compression-support 
--with-pear 
--enable-opcache

6.编译与安装

make && make install

这里要make好久,要耐心一下

 

7.添加 PHP 命令到环境变量

vim /etc/profile

在末尾加入

PATH=$PATH:/usr/local/php/bin

export PATH

要使改动立即生效执行

./etc/profile

source /etc/profile

查看环境变量

echo $PATH

查看php版本

php -v

8.配置php-fpm

   cp php.ini-production /etc/php.ini

cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm

9.启动php-fpm

/etc/init.d/php-fpm start

10.配置nginx虚拟机,绑定域名

vim /etc/nginx/conf.d/default.conf

把下面的内容复制到default.conf

server {
    listen       80;
    server_name  localhost;

    #charset koi8-r;
    #access_log  /var/log/nginx/log/host.access.log  main;

    location / {
        autoindex on;
        autoindex_exact_size off;
        autoindex_localtime on;
        root /usr/share/nginx/html;
        index  index.html index.htm;
    }

    #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/share/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/share/nginx/html;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }

    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /.ht {
    #    deny  all;
    #}
}

原文件:

server {
    listen       80;
    server_name  localhost;

    #charset koi8-r;
    #access_log  /var/log/nginx/log/host.access.log  main;

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

    #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/share/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           /var/www/;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }

    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /.ht {
    #    deny  all;
    #}
}

2.重启nginx

service nginx reload

 3.更改目录文件权限

chmod -R 777 /var/www/
原文地址:https://www.cnblogs.com/kuics/p/6025453.html