rpm包方式实现LNMP
admin
2023-06-07 21:22:30
0

rpm包 lnmp 


nginx-主机 : 172.16.40.99

php-fpm-主机 : 172.16.40.11

mariadb-主机  : 172.16.40.88


一.安装,配置nginx-主机: 172.16.40.99

安装:

# yum install nginx

       # nginx     启动

       # nginx -s stop  停止

# nginx -t  测试配置文件是否正确

# nginx -s reload  重载配置文件


配置两个虚拟主机:

# vim /etc/nginx/conf.d/vhosts1.conf

server {

        listen 80;

        server_name  www1.ryanpeng.com;

        root /data/vhost/www1;

        location ~ \.php$ {

                fastcgi_index index.php;

                fastcgi_pass 172.16.40.11:9000;

                fastcgi_param SCRIPT_FILENAME /data/vhost/www1$fastcgi_script_name;

                (表示以.php结尾的文件传给php-fpm来处理,此处地址是php服务器地址)

                include         fastcgi_params;

        }


}


# vim /etc/nginx/conf.d/vhosts2.conf

server {

        listen 80;

        server_name  www2.ryanpeng.com;

        root /data/vhost/www2;

        location ~ \.php$ {

                fastcgi_index index.php;

                fastcgi_pass 172.16.40.11:9000;

                fastcgi_param SCRIPT_FILENAME /data/vhost/www2$fastcgi_script_name;

                include         fastcgi_params;

        }


}


# mkdir -pv /data/vhost/www{1,2}

www{1,2} (目录下添加测试页,测试nginx是否正常运行虚拟主机)

index.php (用于转向php-fpm主机)


###--带缓存项的虚拟主机配置文件--###

server {

        listen 80;

        root /data/vhost/www1;


        location ~ \.php$ {

                fastcgi_cache_valid     200 1m;

                fastcgi_cache            one;

                fastcgi_cache_key       $uri;

                fastcgi_cache_min_uses  2;

                fastcgi_cache_methods   GET;

                fastcgi_index index.php;

                fastcgi_pass 172.16.40.11:9000;

                fastcgi_param SCRIPT_FILENAME /data/vhost/www1$fastcgi_script_name;

                include         fastcgi_params;

        }


        location / {

                rewrite /(.*)$ https://www1.ryanpeng.com/$1;

        }

}


###--https的虚拟主机配置文件80端口变为443--###

server {

        listen 443 ssl;

        root /data/data/www1;

        ssl on;

        ssl_certificate         www1.cacert;

        ssl_certificate_key      www1.key;

        ssl_session_cache       shared:SSL:1m;

        ssl_session_timeout     1m;

        ssl_ciphers             HIGH:!aNULL:!MD5;


        location ~ \.php$ {

                fastcgi_cache_valid     200 1m;

                fastcgi_cache            one;

                fastcgi_cache_key       $uri;

                fastcgi_cache_min_uses  2;

                fastcgi_cache_methods   GET;

                fastcgi_index index.php;

                fastcgi_pass 172.16.40.11:9000;

                fastcgi_param SCRIPT_FILENAME /data/data/www1$fastcgi_script_name;

                include         fastcgi_params;

        }

}




二.安装配置php-fpm主机: 172.16.40.11

安装:

# rpm -q php  ###确保之前没有php程序

# yum install php-fpm php-mysql php-mbstring



                        # mkdir /var/lib/php/session

                        # useradd -r nginx

                        # chown nginx.nginx /var/lib/php/session/


配置:

# vim /etc/php-fpm.d/www.conf

listen = 172.16.40.11:9000 (设置php服务器监听地址即监听本地能够与外部通信的地址)

listen.allowed_clients = 172.16.40.99 (监听具有httpd服务的IP地址)


# mkdir -pv /data/vhost/www{1,2}


# vim /data/vhost/www1/index.php

 

  This is vhost1

phpinfo();

?>


# vim /data/vhost/www2/index.php

 

  This is vhost2

phpinfo();

?>


分别测试 www1.ryanpeng.com,www2.ryanpeng.com 看nginx与php-fpm是否连接成功


三.安装配置mariadb主机: 172.16.40.88


        安装启动:

                # yum install mariadb-server

                # systemctl start mariadb.service


        创建数据库及授权用户:

                MariaDB [(none)]> grant all on db.* to 'dbuser'@'172.16.%.%'  identified by "dbpasswd";

                MariaDB [(none)]> CREATE DATABASE db;


        在php服务器(172.16.40.11)上建立php测试页,测试php主机是否可以正常连接数据库主机

                # vim /data/vhost/www1/index.php


                       

                        $conn = mysql_connect('172.16.40.88','dbuser','dbpasswd');

                        if ($conn)

                                echo "ok";

                        else

                                echo "NO";


                        phpinfo();

                        ?>


        测试连接是否成功,若显示ok则证明连接成功;

 

四.分别在虚拟主机1,2上部署WordPress和phpMyadmin

        

        在php-fpm主机(172.16.40.11)上,下载 phpMyAdmin-4.0.5-all-languages.zip 和 wordpress-4.3.1-zh_CN.zip ;

        将解压后的文件 wordpress phpMyAdmin-4.0.5-all-languages 分别移动到/data/vhost/下的www1和www2 目录中;

                部署WordPress 

                # cd /data/vhost/www1/wordpress/

                # cp wp-config-sample.php wp-config.php

                # vim wp-config.php


                        define('DB_NAME', 'wpdb');

 

                        /** MySQL数据库用户名 */

                        define('DB_USER', 'wpuser');

 

                        /** MySQL数据库密码 */

                        define('DB_PASSWORD', 'wppasswd');

 

                        /** MySQL主机 */

                        define('DB_HOST', '172.16.40.88');


                # scp -r  wordpress/ 172.16.40.99:/data/vhost/www1/

 

                部署phpMyadmin

                # cd /data/vhost/www2

                # ln -sv phpMyAdmin-4.0.5-all-languages phpMyAdmin (创建软链接,方便回滚)

                # cd phpMyAdmin

                # cp config.sample.inc.php config.sample.php 

                # vim config.sample.php

                        $cfg['blowfish_secret'] = 'jACG7X2usbnwzg==';  (使用openssl rand -base64 10生成)

                        $cfg['Servers'][$i]['host'] = '172.16.40.88';  (数据库服务器地址)

                        $cfg['Servers'][$i]['user'] = 'dbuser';

                        $cfg['Servers'][$i]['password'] = 'dbpass'; 


                # scp -r phpMyAdmin/ 172.16.40.99:/data/vhost/www2/ 


        分别登录两个虚拟机,测试WordPress和phpMyadmin


五.在php-fpm(172.16.40.11)主机上安装xcache:

        安装php-xache

        # yum -y install php-xcache

        # systemctl restart php-fpm.service


        配置文件做简单的配置

        # vim /etc/php.d/xcache.ini

        xcache.size  =    300M


        在装载xcache前后进行压力测试

        #ab -n 10000 -c 1000 http://www1.ryanpeng.com/wordpress | http://www2.ryanpeng.com/phpmyadmin


相关内容

热门资讯

轰动性突破!美国终被伊朗逼怂 伊朗局势看来出现了真正的进展,在多方传出美伊谈判立场相互接近后,特朗普北京时间周日凌晨发帖表示,美国...
男子踩中蛇窝,至少被3条毒蛇咬... 5月22日,云南保山市人民医院血液科蛇伤救治中心病房外,26岁的阿杰(化名)在哥嫂的搀扶下,缓缓走出...
塞铁巴铁领导人同日抵京 5月24日,塞尔维亚总统武契奇抵达北京,开始对中国进行为期五天的国事访问。同日,巴基斯坦总理夏巴兹抵...
当前约有240艘船只等待伊朗批... △霍尔木兹海峡(资料图)据伊朗方面24日消息,目前约有240艘船只正在等待获得伊朗方面许可后进入霍尔...
时隔12年,中国再度举办这一重... ‍‍5月23日,中共中央政治局委员、国务院副总理何立峰在苏州出席亚太经合组织(APEC)贸易部长会议...
美伊协议未官宣共和党先内讧,克... 周六,得克萨斯州共和党参议员泰德·克鲁兹表示,他对美国与伊朗即将达成的协议条款“深感担忧”,随后在社...
非常时刻,任正非突然亮相《新闻... 作者 | 布语发现没有,任正非最近在《新闻联播》中公开亮相了,仅仅10秒的镜头,信号却很不寻常。5月...
投喂狮子时观光车车门突然打开!... 5月21日,北京八达岭野生动物园猛兽区发生观光游览车车门意外开启事件,引发社会高度关注。据新京报报道...
重庆电视机安装费 如果是小米或者是索尼的电视机,在安底座的时候是不会收费的,但是如果是安装架子或者是墙壁的费用是大概会...
空调安装费是多少钱 空调安装费用是由多个因素决定的,包括空调的类型、安装位置、管路长度、安装人员等等。因此,空调安装费用...