terwe 发表于 2016-8-24 10:57:15

LNMP搭建

                      一.准备四台主机
        nginx主机:        172.16.10.17/16   192.168.10.17/24
        php主机:        192.168.10.27/24
        mysql主机:        192.168.10.87/24
        CA签证主机:        172.16.10.77
二.分别在三台主机上安装相关软件包
        nginx主机:nginx
        php主机:php-fpm   php-mysqlphp-mbstring
        mysql主机:mariadb
三.搭建LNMP
        1.配置nginx
                1)编辑配置文件
                        vim /etc/nginx/nginx.conf
                   添加下列内容,               
                        server {
                              listen      80 default_server;
                              server_name   www1.douhua.com;
                              root         /data/html/www1;
                           }
                            server {
                              listen         80 ;
                            server_name      www2.douhua.com;
                               root          /data/html/www2;
                           }

                2)创建网页文件目录,主页文件
                        mkdir -pv /data/html/www{1,2}
                分别在两个目录中创建index.html文件
                        cd /data/html/www1
                编辑        vim index.html
                添加一行<h1> www1 page </h1>
                www2目录中同理
                3)检测语法错误并开启nginx服务,并使用浏览器验证
                        检测语法   nginx   -t   
                        开启服务   nginx
       
        2.配置nginx与php-fpm的连接
                1)编辑nginx配置文件,添加location,配置与php-fpm的连接相关
                location ~ \.php{
                root            www1;   
                fastcgi_pass    192.168.10.27:9000;   
                    fastcgi_index   index.php;
                       fastcgi_param   SCRIPT_FILENAME    /data/php/www1$fastcgi_script_name;
                    include         fastcgi_params;
              }
                上述配置文件表示:
                        root        根目录
                        fastcgi_pass    php-fpm监听的地址与端口
                    fastcgi_index   主页文件
                       fastcgi_param   nginx服务器上文件映射至php-fpm服务器上的文件路径
                    include         包含fastcgi_params中的配置
                虚拟主机2配置同
                2)在虚拟资源目录中添加index.php文件
                        touch/data/html/www1/index.php
                3)在php-fpm主机上编辑配置文件
                        vim /etc/php-fpm.d/www.conf
                        更改监听地址与允许的客户端
                                listen = 192.168.10.27:9000
                                listen.allowed_clients = 192.168.10.17               
                4)编辑测试文件
                        a)创建目录
                                mkdir -pv /data/php/www{1,2}
                        b)进入该目录,并编辑测试文件
                                cd /data/php/www1
                                vim index.php
                                内容为:
                                <h1> Test 1 </h1>

                                <?php
                                        phpinfo();
                                ?>
                5)重启php-fpm服务,并打开浏览器检测
                        http://172.16.10.17/index.php
       
        3.配置php-fpm与mysql的连接
                1)在mysql主机上启动mariadb服务
                2)登录mysql,创建测试所需用户

MariaDB [(none)]> GRANT ALL ON testdb.* TO 'testuser'@'192.168.%.%' IDENTIFIED BY 'passwd';

                3)在php-fpm主机上修改测试文件index.php内容为:
                        <h1>Test php-mysql </h1>

                        <?php
                               $conn = mysql_connect('192.168.10.87','testuser','passwd');
                               if ($conn)
                                       echo "ok";
                                else
                                echo "false";
                        ?>
                4)打开浏览器测试
                        http://172.16.10.17/index.php

四.在虚拟主机www1.douhua.com上部署wordpress
        1)下载并解压wordpress包
        2)将解压后的包拷贝至php-fpm主机上的/data/php/www1目录下
        3)拷贝配置文件并编辑
                cp wp-config-sample.phpwp-config.php
       编辑配置文件
                vimwp-config.php
                define('DB_NAME', 'wpdb');                /** WordPress数据库的名称 */
                define('DB_USER', 'wpuser');               /** MySQL数据库用户名 */
                define('DB_PASSWORD', 'passwd');        /** MySQL数据库密码 */
                define('DB_HOST', '192.168.10.87');        /** MySQL主机 */
        4)在mysql主机上创建用户和数据库
                MariaDB [(none)]> GRANT ALL ON wpdb.* TO 'wpuser'@'192.168.%.%' IDENTIFIED BY 'passwd';
                MariaDB [(none)]> CREATE DATABASE wpdb;
        5)在nginx主机上做相关配置
                拷贝解压后的wordpress文件至/data/html/www1目录中
                cp -r /root/wordpress   /data/html/www1
        6)打开浏览器验证(事先配置好DNS解析,或者直接输入ip地址访问)
                http://www1.douhua.com/wordpress/index.php   
五.在虚拟主机www2.douhua.com上部署phpMyadmin
        1)下载并解压phpMyadmin包
        2)将解压后的包拷贝至php-fpm主机上的/data/php/www2目录下
        3)生成随机数并以便添加至phpMyadmin配置文件中
        4)创建软链接便于管理
                cd/data/php/www2       
                ln -svphpMyAdmin-4.4.14.1-all-languages pma
        5)修改phpMyadmin配置文件
                cd pma
                cp config.sample.inc.php config.inc.php
                vim config.inc.php
        添加随机数至$cfg['blowfish_secret'] = '';中的单引号中
                $cfg['blowfish_secret'] = 'ZmAz04rjIHxjgw';
        并将服务器地址更改为mysql主机地址
                $cfg['Servers'][$i]['host'] = '192.168.10.87';
        6)创建php的session目录
                mkdir   /var/lib/php/session
                chown        apache.apache/var/lib/php/session   此处用户与php-fpm配置文件中的用户一致
        7)在nginx主机上配置
                拷贝解压后的phpMyadmin目录至/data/html/www2中并改名为pma
        8)登录浏览器查看
                http://www2.douhua.com/pma

六.为www2.douhua.com主机提供https服务
        1)创建证书目录,及证书
                创建目录:mkdir /etc/nginx/ssl
                        cd /etc/nginx/ssl
                生成私钥
                        (umask 066;openssl genrsa -out nginx.key 2048)
                生成申请证书:
                       openssl req -new -key nginx.key -out nginx.csr
                在另一主机上签证,将签完后的证书拷贝至此目录中
        2)编辑配置文件:
                vim /etc/nginx/nginx.conf
        在www2.douhua.com中添加配置
                listen                  443 ssl;
                       ssl_certificate         /etc/nginx/ssl/nginx.crt;
              ssl_certificate_key   /etc/nginx/ssl/nginx.key;
        3)重载配置文件
                nginx   -t
                nginx   -sreload
        4)打开浏览器验证(浏览器须事先将根证书导入并添加信任)
                https://www2.douhua.com

                   

页: [1]
查看完整版本: LNMP搭建