Table of Contents 基于Linux操作系统,以Nginx作为web服务器,Mysql作为数据库。Nginx会直接处理静态请求,因为Nginx本身不具备处理动态请求能力,它会把用户的动态请求交给php服务(php-fpm)去处理,php服务可以和数据库进行交互,将结果返回给Nginx,最终返回给用户 流程: 静态请求:client -> nginx(location) -> html -> client 动态请求:client -> nginx(location) -> fastcgi(快速通用网关接口) -> php-fpm(管理进程) -> wrapper(工作进程) -> php -> mysql(php连接数据库) -> php -> php-fpm -> fastcgi -> nginx -> http -> client 系统:rhel7.6 安装包版本: 添加语法检测: 没有报错,make成功,同时在objs目录下又添加了很多内容 但是此时我们发现nginx版本号完全显示出来,这在企业中是相对比较危险的,那么接下来我们将其隐藏 关闭前: 关闭后: 做软链接来方便操作,直接通过nginx来充当命令 安装和更新部分官方文档:https://dev.mysql.com/doc/refman/5.7/en/source-installation-methods.html 这里咱们不用最新版本,选择5.7.30版本 image widget 之前我们编译时通过./cofigure,但是我们可以看到,当前目录下并没有configure,这是因为MySQL是通过cmake来编译 但是,这并不是结束,出现了错误 原因已经告知,缺少-DWITH_BOOST=<directory>模块,添加该模块再次运行 code snippet widget 并没有结束,再次运行的结果仍然有错误,看错误提示,告知我们缺少ncurses-devel库 在这里要注意,在重新预编译时需要删除上一次编译的缓存文件CMakeCache.txt 再次编译 报错,需要添加C++编译器 清理缓存后再次编译,出现一个warning 清理缓存,并再次编译,编译成功~编译过程已经没有错误 安装过程比较长,需要耐心等待一阵子。这里我直接截取部分过程,代表已经安装完成 这里为了后面可以快捷使用mysql,创建软链接到/usr/local/bin/ image widget 这里我出现了下图问题,不知道是不是大家都会出现,若出现可以参考一下我的解决办法 启动成功~~~ image widget 安装依赖 网上下载oniguruma包,并进行安装 依赖安装完成,我们重新进行编译 编译成功~ 错误提示告知我们由于缺少nginx用户,那么我们就去新增一下 访问成功,显示php的信息页面
LNMP定义
系统环境
LNMP安装部署
安装Nginx
解压源码包并进行语法检测[通过字体颜色可以查看是否写错]
编译
yum install -y gcc gcc-c++ pcre-devel openssl-devel
[root@node1 nginx-1.18.0]# ./configure --prefix=/usr/local/lnmp/nginx > --with-http_ssl_module > --with-http_stub_status_module > --user=nginx --group=nginx
make && make install
/usr/local/lnmp/nginx/sbin/nginx -V # 查看nginx系统版本内容
隐藏版本号
vim src/core/nginx.h
关闭debug,减少编译代码量
vim auto/cc/gcc
修改nginx配置文件
# 默认不支持动态页面访问 cd /usr/local/lnmp/nginx/conf vim nginx.conf ### 打开php模块,并进行修改 修改访问顺序,首先访问index.php,没有再进行访问index.html ###
ln -s /usr/local/lnmp/nginx/sbin/nginx /usr/local/sbin/
开启nginx
nginx # 开启nginx netstat -tnlp # 查看端口
安装MySQL
官网下载MySQL
解压MySQL
编译MySQL
useradd -s /sbin/nologin -M mysql # 创建MySQL用户,用来启动MySQL进程 yum install -y cmake # 安装cmake用于编译MySQL cmake -DCMAKE_INSTALL_PREFIX=/usr/local/lnmp/mysql # 安装MySQL -DMYSQL_UNIX_ADDR=/usr/local/lnmp/mysql/data/mysql.sock -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306
yum install -y ncurses-devel
rm -fr CMakeCache.txt
yum install -y gcc-c++
yum install -y bison
make && make install 安装MySQL
配置过程一
cd /usr/local/lnmp/mysql/ mkdir data chown -R mysql data
ln -s /usr/local/lnmp/mysql/bin/* /usr/local/bin/
cd mysql-test/include/ # 切换到配置文件目录下 mv /etc/my.cnf /etc/my.cnf.bak # 将原先的/etc/my.cnf进行备份,命名为/etc/my.cnf.bak cp default_my.cnf /etc/my.cnf # 将default_my.cnf复制到/etc/目录下,且命名为my.cnf vim /etc/my.cnf # 编译过程中所指定的配置文件目录
cd support-files/ cp -a mysql.server /etc/init.d/mysqld # 复制脚本 chmod +x /etc/init.d/mysqld # 增加执行权限 chkconfig mysqld on # 设置开机启动 chkconfig --list # 查看设置详情 systemctl status mysqld # 查看当前mysqld状态
mysqld --user=mysql --initialize
systemctl start mysqld systemctl status mysqld
mysql -uroot -p # 登录数据库
mysql_secure_installation # 重置密码,这里我重置为dsd
mysql -uroot -p
配置过程二
vim /etc/my.cnf #编译时指定了配置文件目录
./bin/mysqld --user=mysql --initialize
./support-files/mysql.server start
mkdir /var/log/mariadb # 创建mariadb目录 touch /var/log/mariadb/mariadb.log # 创建mariadb.log文件 chown -R mysql /var/log/mariadb/ # 修改使用者权限
./bin/mysql_secure_installation
安装php
解压
编译
./configure --prefix=/usr/local/lnmp/php --with-config-file-path=/usr/local/lnmp/php/etc --with-mysqli=/usr/local/lnmp/mysql/bin/mysql_config --enable-soap --enable-mbstring=all --enable-sockets --with-pdo-mysql=/usr/local/lnmp/mysql --enable-gd --without-pear --enable-fpm
yum install libxml2-devel.x86_64 sqlite-devel.x86_64 libpng-devel.x86_64 -y
wget https://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/o/oniguruma-5.9.5-3.el7.x86_64.rpm ## 下载oniguruma二进制包 wget https://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/o/oniguruma-devel-5.9.5-3.el7.x86_64.rpm ## 下载oniguruma-devel二进制包 yum install oniguruma-5.9.5-3.el7.x86_64.rpm oniguruma-devel-5.9.5-3.el7.x86_64.rpm -y
安装
make && make install
编辑配置文件
cp php-fpm.conf.default php-fpm.conf #备份默认配置文件1 vim php-fpm.conf
cd php-fpm.d/ cp www.conf.default www.conf # 备份默认配置文件2 vim www.conf # 编辑配置文件2 ### nginx只能处理静态请求,当在接收到动态请求时会传给php,因此php这里接收的就是nginx的信息 ###
cd php-7.4.5/ cp php.ini-production /usr/local/lnmp/php/etc/php.ini # 拷贝主配置文件到安装路径下 cd /usr/local/lnmp/php/etc/ vim php.ini # 编辑主配置文件 ### 更改时区到上海 ###
编辑启动脚本
cd php-7.4.5/sapi/fpm cp init.d.php-fpm /etc/init.d/php-fpm # 复制启动脚本到/etc/init.d/目录下 chmod +x /etc/init.d/php-fpm # 给该文件提供执行权限 /etc/init.d/php-fpm start
useradd -s /sbin/nologin -M nginx # 新增nginx用户 /etc/init.d/php-fpm start # 启动 netstat -tnlp # 查看我们开启的端口
测试
cd /usr/local/lnmp/nginx/html vim index.php ### <?php phpinfo() # 输出php一个默认页面 ?> ###
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算