黄金架构编译部署

LNMP黄金架构部署

行走的CD:
LNMP的解析过程:提到 LNMP的解析过程,我们应需要了解一个概念 CGI, CGI 就是指一个通用网关接口,用于 HTTP 服务器和其他应用服务器通讯的一个工具,在这 HTTP 服务器一般咱们就是指的是 Nginx、 Apache 等 Web 服务器,其他应用服务器一般是指的指另一个动态服务器上安装的 Python、 PHP 脚本编程语言编写的一个逻辑框架。传统的 CGI 的性能都比较弱,当 HTTP 给后端一个动态请求,都需要重启一下 CGI 解析器,也就是重启 PHP 写的这个脚本框架,然后处理完毕后再发给 Nginx,那如果是一个高并发的情况下,服务器会产生巨大的性能压力,它的处理效率会非常差,因此就会诞生了另一个工具叫 FASTCGI。FASTCGI 是一个可伸缩高效的活动在 HTTP 服务器与动态脚本之间通讯的网关接口,如果 HTTP 服务器与后端程序运行的两台分别部署在两台服务器上,这个 FASTCGI 的通讯形式就是 IP 加端口的网络通讯形式,如果在一台服务器上,那么就是一般是指用 socket 就可以进行本地通信。在Linux环境下,Fastcgi其实就是一个socket套接字文件。fastcgi进程管理器,也就是一个模块fastcgi_pass,咱们的静态请求 Nginx 会直接处理完之后返回给用户,动态请求 Nginx 会转发给 fastcgi +PHP, 其实也就是 fastcgi 和 PHP 的一个结合。



nginx源码安装

1.下载依赖包
yum -y install pcre pcre-devel openssl openssl-devel gcc make zlib-devel

2.下载nginx源码包
wget https://nginx.org/download/nginx-1.16.1.tar.gz
mkdir -p /usr/lnmp/nginx
useradd nginx  -s /sbin/nologin -M
tar -zxf nginx-1.16.1.tar.gz

3.编译安装
cd nginx*
./configure --user=nginx --group=nginx --prefix=/usr/lnmp/nginx
make && make install

4.配置nginx的环境变量
echo "export PATH=$PATH:/usr/lnmp/nginx/sbin" >>/etc/profile
source /etc/profile

5.启动nginx
nginx
ss -nplt 

mysql源码安装

1.下载依赖包
yum -y install ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make cmake

2.下载mysql源码包
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.27.tar.gz
useradd -r mysql -M -s /bin/nologin
mkdir -p /usr/lnmp/{mysql,data,log}
tar xzvf mysql-boost-5.7.27.tar.gz

3.编译安装
cd mysql-5.7.27/
 cmake . \
-DWITH_BOOST=boost/boost_1_59_0/ \
-DCMAKE_INSTALL_PREFIX=/usr/lnmp/mysql \
-DSYSCONFDIR=/etc \
-DMYSQL_DATADIR=/usr/lnmp/data \
-DINSTALL_MANDIR=/usr/share/man \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1

make -j3 && make install

4.初始化
cd /usr/lnmp/mysql
chown -R mysql.mysql .
./bin/mysqld --initialize --user=mysql --basedir=/usr/lnmp/mysql --datadir=/usr/lnmp/data
vim /etc/my.cnf
 [mysqld]
basedir=/usr/lnmp/mysql     
datadir=/usr/lnmp/data 

5.启动mysql
/usr/lnmp/mysql/bin/mysqld_safe --user=mysql &
启动之后再按一下回车!即可后台运行

6.修改启动方式
cp support-files/mysql.server /etc/init.d/mysqld
systemctl daemon-reload
systemctl start mysqld
netstat -lntp | grep 3306
/usr/local/mysql/bin/mysql -uroot -p'GP9TKGgY9i/8'

7.配置环境变量
echo "export PATH=$PATH:/usr/lnmp/mysql/bin" >>/etc/profile
source /etc/profile

php源码安装

1.下载依赖包
yum install -y apr* autoconf automake bison bzip2 bzip2* cpp curl curl-devel fontconfig fontconfig-devel freetype freetype* freetype-devel gcc gcc-c++ gtk+-devel gd gettext gettext-devel glibc kernel kernel-headers keyutils keyutils-libs-devel krb5-devel libcom_err-devel libpng libpng-devel libjpeg* libsepol-devel libselinux-devel libstdc++-devel libtool* libgomp libxml2 libxml2-devel libXpm* libxml* libXaw-devel libXmu-devel libtiff libtiff* make mpfr ncurses* ntp openssl openssl-devel patch pcre-devel perl php-common php-gd policycoreutils telnet t1lib t1lib* nasm nasm*  zlib-devel

2.libiconv 包的编译安装
yum源中缺少libiconv包,用于php的编码转换
wget  http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
tar xf libiconv-1.14.tar.gz 
cd libiconv-1.14 
./configure --prefix=/usr/lnmp/libiconv
sed -i -e '/gets is a security/d' srclib/stdio.in.h
make -j4 && make install

3.下载php源码包
wget  https://www.php.net/distributions/php-8.3.4.tar.gz 
tar xf php-8.3.4.tar.gz 
cd php-8.3.4

4.编译安装php
./configure  --prefix=/usr/lnmp/php --with-config-file-path=/usr/lnmp/php  --with-config-file-scan-dir=/usr/lnmp/php/php.d --enable-mysqlnd  --with-mysqli  --with-pdo-mysql  --enable-fpm  --with-fpm-user=nginx  --with-fpm-group=nginx  --with-gd   --with-iconv  --enable-xml   --enable-shmop  --enable-sysvsem  --enable-inline-optimization  --enable-mbregex  --enable-mbstring --enable-ftp  --with-openssl   --enable-pcntl    --enable-sockets --with-xmlrpc  --enable-soap  --without-pear   --with-gettext  --enable-session  --with-curl --with-jpeg-dir  --with-freetype-dir  --enable-opcache
make -j4 && make install

5.配置开发环境文件
cp php.ini-production /usr/lnmp/php/lib/php.ini
vim +1384 /usr/lnmp/php/lib/php.ini
打开session.save_path ="/tmp"

6.FastCGI的配置文件
cd /usr/lnmp/php/etc/
ls
php-fpm.conf.default php-fpm.d 
cp php-fpm.conf.default php-fpm.conf
vim +17 php-fpm.conf
#17行将注释取消并修改
pid = /var/run/php-fpm.pid 

cd /usr/lnmp/php/etc/php-fpm.d/
cp www.conf.default www.conf

7.启动php服务
/usr/lnmp/php/sbin/php-fpm 
netstat -tunlp|grep php 

联动nginx

1.修改nginx配置文件,添加以下内容
vim /usr/lnmp/nginx/conf/nginx.conf
#在location /下添加  index.php 
#在location~ \.php$ 将/scripts改为/usr/local/nginx/html
2.重新加载nginx
nginx -s reload
3.添加php文件测试
cd /usr/lnmp/nginx/html/
vim index.php
<h1>always on line </h1>
<?php
phpinfo();
?>
4.访问

部署WordPress

1.下载并解压wordpress安装包
tar xf wordpress-*
rm -rf /usr/lnmp/nginx/html/*
cp -r wordpress/* /usr/lnmp/nginx/html/   # 将代码拷贝到网站发布目录中
nginx -s reload
2.创建数据库
mysql -pQianfeng@123 -e "create database wordpress;"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值