部署LNMP

安装部署LNMP环境实现动态网站解析

静态网站 在不同环境下访问,网站内容不会变化

动态网站 在不同环境下访问,网站内容有可能发生变化(需安装php-fpm服务)

  • 安装部署Nginx、MariaDB、PHP、PHP-FPM;
  • 启动Nginx、MariaDB、FPM服务;
  • 并测试LNMP是否工作正常

 一、安装软件

  • nginx
  • mariadb(数据库客户端软件)、mariadb-server(数据库服务器软件)、mariadb-devel(其他客户端软件的依赖包)
  • 安装数据库后 可以当客户端和服务器
  • php(解释器)、php-fpm(进程管理器服务)(作为依赖可以自动安装)、php-mysqlnd(PHP的数据库扩展包)(让php可以控制数据库)
# 安装nginx
[root@proxy nginx]#killall nginx                      #停止nginx程序
[root@proxy nginx]#cd  /root/lnmp_soft/nginx-1.22.1
[root@proxy nginx-1.22.1]#rm -rf  /usr/local/nginx    #删除nginx原有目录
[root@proxy nginx-1.22.1]# yum -y install gcc make openssl-devel pcre-devel
[root@proxy nginx-1.22.1]# ./configure   \
> --user=nginx   --group=nginx   \
> --with-http_ssl_module
[root@proxy nginx-1.22.1]# make && make install

# 安装数据库
[root@proxy ~]# yum -y install   mariadb   mariadb-server   mariadb-devel

# 安装php和php-fpm
[root@proxy ~]# yum -y  install  php   php-mysqlnd
[root@proxy ~]# yum -y  install  php-fpm

 启动服务

# 启动Nginx服务,如果服务器上已经启动了其他监听80端口的服务(如httpd),则需要先关闭该服务。
[root@proxy ~]# systemctl stop httpd                    #如果该服务存在则关闭该服务
[root@proxy ~]# /usr/local/nginx/sbin/nginx             #启动Nginx服务
[root@proxy ~]# ss -utnlp | grep :80      

# 启动MySQL服务
[root@proxy ~]# systemctl enable mariadb --now          #启动服务器,并设置开机自启

# 启动PHP-FPM服务
[root@proxy ~]# systemctl enable php-fpm --now          #启动fpm,并设置开机自启

二、构建构建LNMP平台

  • php-fpm配置文件
    • 1. 使用IP的方式
    • 2. socket方式(端口的方式) 网络连接

2.1 IP方式

 php-fpm 配置文件:/etc/php-fpm.d/www.conf

 修改php-fpm 配置文件

[root@proxy etc]# vim /etc/php-fpm.d/www.conf
[www]
listen = 127.0.0.1:9000                        #php-fpm端口号(使用网络通信)
;listen = /run/php-fpm/www.sock                #注释该行
pm.max_children = 50                           #最大进程数量
pm.start_servers = 5                           #最小进程数量

[root@proxy etc]#systemctl restart php-fpm     #重启服务

 修改Nginx配置文件并启动服务 

# 找到以下几行
[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf
...
 location  ~  \.php$  {                     #~是使用正则表达式,匹配以.php结尾
        root           html;
        fastcgi_pass   127.0.0.1:9000;      #将请求转发给本机9000端口
        fastcgi_index  index.php;
       #fastcgi_param   SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi.conf;        #加载fastcgi配置文件
        }

设置 index.php为默认首页

...
location / {
            root   html;
            index  index.php  index.html   index.htm;
#设置默认首页为index.php,当用户在浏览器地址栏中只写域名或IP,不说访问什么页面时,服务器会把默认首页index.php返回给用户
        }
...

  只要把index.php放在首位就是默认访问index.php

2.2 socket方式

相比于IP方式,这个效率高,进程间通信,但是只能在一台服务器上使用

 修改php-fpm 配置文件

[root@proxy etc]# vim /etc/php-fpm.d/www.conf
[www]
;listen = 127.0.0.1:9000                      #注释或删除该行
listen = /run/php-fpm/www.sock                #socket方式(使用进程通信)
listen.acl_users = apache,nginx,nobody        #添加nobody账户
[root@proxy etc]#systemctl restart php-fpm    #重启服务

  /run/php-fpm/www.sock 是接口文件,如果,安装nginx没指定用户,就要添加nobody账户 

 修改Nginx配置文件并启动服务

[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf
...
 location  ~  \.php$  {                            #~是使用正则表达式,匹配以.php结尾
        root           html;
       #fastcgi_pass   127.0.0.1:9000;             #注释或删除该行
        fastcgi_pass  unix:/run/php-fpm/www.sock;  #将请求转发给php-fpm进程
        fastcgi_index  index.php;
       #fastcgi_param   SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi.conf;               #加载fastcgi配置文件
        }
[root@proxy ~]# /usr/local/nginx/sbin/nginx -s reload
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值