Linux初学(十四)LampLnmp

一、简介

LAMP和LNMP是两种常见的web服务器组合。具体如下:

  • LAMP:LAMP代表的是Linux(操作系统)+ Apache(HTTP服务器)+ MySQL(数据库)+ PHP(编程语言)。这个组合被广泛用于建立web应用平台,特别是对于中小企业和个人开发者来说,由于其开源和免费的特性,LAMP成为了一个经济高效的选择。
  • LNMP:LNMP则是将Apache替换为Nginx,即Linux + Nginx + MySQL + PHP(国外喜欢简称为LEMP)。Nginx在处理静态文件时速度快且消耗系统资源极少,性能稳定、功能丰富、运维简单。与Apache相比,Nginx在处理大量并发连接时表现更优,因此在高流量的环境下表现更好

分类

静态

  • 服务器会直接返回给客户端,通过浏览器展示
  • 例如:图片、html、css、js、视频

动态

  • 用户请求的文件会在服务器端执行,然后服务器端会将程序的执行结果返回给客户端
  • 例如:php、python、go、java....

二、配置LNMP

CGI:适用于简单的动态内容生成,但在高并发场景下效率较低。

FCGI :是对CGI的优化,通过持久连接提高了处理速度,适用于高并发的场景

安装的组件

Nginx - epel源

php-fpm -remi源

mysql - mysql-server mariadb

第一步:安装Nginx

http://t.csdnimg.cn/udBxd

关闭防火墙和selinux

systemctl stop firewalld

systemctl disable firewalld

sed -i s/SELINUX=enforcing/SELINUX=disabled/g   /etc/selinux/config    #永久关闭

setenforce 0    #临时关闭

第二步:安装MySQL

我们的系统是Centos7.9,MySQL的名称是mariadb

yum install mariadb-server -y

启动MySQL

[root@localhost ~]# systemctl start mariadb
[root@localhost ~]# systemctl enable mariadb
[root@localhost ~]# ss -tnl

第三步:安装php和php-fpm

php:是php程序的解释器

php-fpm:是用于实现fcgi的功能就,也就是让服务器开通 9000端口

安装组件

[root@localhost ~]# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-
7.noarch.rpm
[root@localhost ~]# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

[root@localhost ~]# yum install php70w.x86_64 php70w-cli.x86_64 php70w-common.x86_64 php70w-gd.x86_64 php70w-ldap.x86_64 php70w-mbstring.x86_64 php70w-mcrypt.x86_64 php70w-mysql.x86_64 php70w-pdo.x86_64

[root@localhost ~]# yum install php70w-fpm -y

启动php-fpm

[root@localhost yum.repos.d]# systemctl start php-fpm
[root@localhost yum.repos.d]# systemctl enable php-fpm
[root@localhost yum.repos.d]# ss -tnl
LISTEN     0     128      127.0.0.1:9000

第四步:整合Nginx和PHP

修改Nginx的配置文件,将客户端的对于php的请求转发到php-fpm


vim /usr/local/nginx/conf/nginx.conf

 修改个内容

第五步:重启服务

/usr/local/nginx/sbin/nginx -s reload

第六步:创建测试页面

echo "<?php phpinfo(); ?>"  >/usr/local/nginx/html/a.php

第七步:访问测试

在浏览器中输入IP:192.168.1.1/a.php

三、扩展:安装各版本PHP

 Centos下如何Yum安装php5.5、php5.6、php7.0等版本

http://www.ithov.net/linux/274

1.检查当前安装的PHP包
yum list installed | grep php
如果有安装的PHP包,先删除他们

yum remove php.x86_64 php-cli.x86_64 php-common.x86_64 php-gd.x86_64 phpldap.x86_64 php-mbstring.x86_64 php-mcrypt.x86_64 php-mysql.x86_64 php-pdo.x86_64

2、设置yum源
Webtatic EL7 for CentOS/RHEL 7:
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Webtatic EL6 for CentOS/RHEL 6:
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm

Webtatic EL5.1 for CentOS/RHEL 5:
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-5.noarch.rpm
rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rpm

如果想删除上面安装的包,重新安装
rpm -qa | grep webstatic
rpm -e 上面搜索到的包即可

3.运行yum install安装支持包

php5.5的版本
yum install php55w.x86_64 php55w-cli.x86_64 php55w-common.x86_64 php55w-gd.x86_64
php55w-ldap.x86_64 php55w-mbstring.x86_64 php55w-mcrypt.x86_64 php55w-mysql.x86_64
php55w-pdo.x86_64

php5.6的版本
yum install php56w.x86_64 php56w-cli.x86_64 php56w-common.x86_64 php56w-gd.x86_64
php56w-ldap.x86_64 php56w-mbstring.x86_64 php56w-mcrypt.x86_64 php56w-mysql.x86_64
php56w-pdo.x86_64

php7.0的版本
yum install php70w.x86_64 php70w-cli.x86_64 php70w-common.x86_64 php70w-gd.x86_64
php70w-ldap.x86_64 php70w-mbstring.x86_64 php70w-mcrypt.x86_64 php70w-mysql.x86_64
php70w-pdo.x86_64

4.安装PHP FPM
php5.5的版本:yum install php55w-fpm php55w-opcache
php5.6的版本:yum install php56w-fpm
php7.0的版本:yum install php70w-fpm

部署LAMP

和LNMP步骤一样 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/516065.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

好用的Android Studio插件管理器

1.使用阿里云的通义灵码方便快速开发 1.1下载插件File->plugin->marketplace 搜索 Tongyilingma然后安装重启登录阿里云&#xff0c;确认 1.2 使用方法 输入信息描述 比如 //写一段冒泡排序然后换行&#xff0c;输入public/private/protected方法会自动生成联想代码…

Ubuntu18.04+2070s+TF2.x环境,单卡训练PointNet++实战

Ubuntu18.042070sTF2.x环境&#xff0c;单卡训练PointNet实战 1. 编译tf_ops文件夹下的三个动态库2. 修改Python版本、TF版本不一致带来的差异3. 下载训练数据4. 模型训练 1. 编译tf_ops文件夹下的三个动态库 该文件夹下定义了一些pointnet模型中需要使用的cuda核函数&#xf…

elsint报错Delete `␍`eslintprettier/prettier

一&#xff0c;原因 这篇博客写得很清楚&#xff1a;解决VSCode Delete ␍eslint(prettier/prettier)错误_vscode 删除cr-CSDN博客 还有这篇文章&#xff0c;解决办法很详细&#xff1a;滑动验证页面 二&#xff0c;解决办法 根目录下新建.prettierrc.js文件 module.exports…

Linux-程序地址空间

目录 1. 程序地址空间分布 2. 两个问题 3. 虚拟地址和物理地址 4. 页表 5. 解决问题 6. 为什么要有地址空间 1. 程序地址空间分布 测试一下&#xff1a; #include<stdio.h> #include<stdlib.h> #include<unistd.h> #include<sys/types.h>int ga…

C#仿OutLook的特色窗体设计

目录 1. 资源图片准备 2. 设计流程&#xff1a; &#xff08;1&#xff09;用MenuStrip控件设计菜单栏 &#xff08;2&#xff09;用ToolStrip控件设计工具栏 &#xff08;3&#xff09;用StatusStrip控件设计状态栏 &#xff08;4&#xff09;ImageList组件装载树节点图…

小米手机刷入Root权限

小米手机刷入Root权限 解Bi锁下载刷机包刷入Root准备工作开始刷入 验证root 解Bi锁 下载地址&#xff1a;小米BI官方解锁工具需要先申请&#xff0c;申请通过才能解锁注意&#xff1a;解BI锁会清除所有数据。 下载刷机包 根据自己的手机型号和版本到小米官网下载和自己手机版…

android framework 学习笔记(1)

学习资料&#xff1a;《Android Framework 开发揭秘》_哔哩哔哩_bilibili 什么是android framework 看图说话&#xff0c;android框架从上至下分为&#xff1a; 应用层(Application)&#xff0c;Java framework(Application Framework),Native framework. 包括Libraries 和 A…

基于JSP杏种质资源管理系统

摘要 社会的进步导致人们对于学习的追求永不止境&#xff0c;那么追求农业信息化的方式也从单一的田地教程变成了多样化的学习方式。多样化的学习方式不仅仅是需要人们智慧的依靠&#xff0c;还需要能够通过软件的加持进行信息化的价值体现。软件和系统的产生&#xff0c;从表…

【mT5模型】mT5: A Massively Multilingual Pre-trained Text-to-Text Transformer

【mT5模型】mT5: A Massively Multilingual Pre-trained Text-to-Text Transformer 论文信息 阅读评价 Abstract Introduction Background on T5 and C4 mC4 and mT5 mC4 mT5 Comparison to related models Experiments Zero-shot generation Illegal predictions Pre…

【Pyhton中requests库、re库、文件读写的了解】

1、requests库&#xff1a;第三方库&#xff0c;主要用于Python发送HTTP请求 response1 requests.get(https://www.qq.com/) # 发送get请求 # requestdata {User-Agen: KWHJJKLK, Accept: text/html, Cookie: sjdshkwje213} # 请求数据 # response2 requests.post(https:…

C++(13): 智能指针shared_ptr

1. 概述 shared_ptr智能指针&#xff0c;本质是“离开作用域会自动调整(减小)引用计数&#xff0c;如果引用计数为0&#xff0c;则会调用析构函数”。这样一来&#xff0c;就进化成类似于int、float等的一种会被自动释放的类型。 2. 初始化智能指针 初始化一个智能指针的方式比…

基于springboot实现房屋租赁管理系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现房屋租赁系统演示 摘要 房屋是人类生活栖息的重要场所&#xff0c;随着城市中的流动人口的增多&#xff0c;人们对房屋租赁需求越来越高&#xff0c;为满足用户查询房屋、预约看房、房屋租赁的需求&#xff0c;特开发了本基于Spring Boot的房屋租赁系统。 …

python怎么存储数据

在Python开发中&#xff0c;数据存储、读取是必不可少的环节&#xff0c;而且可以采用的存储方式也很多&#xff0c;常用的方法有json文件、csv文件、MySQL数据库、Redis数据库以及Mongdb数据库等。 1. json文件存储数据 json是一种轻量级的数据交换格式&#xff0c;采用完全…

FreeRTOS第四天

1.总结二进制信号量和计数型信号量的区别&#xff0c;以及他们的使用场景。 进制信号量&#xff1a;信号量的数值只有0和1。(用于共享资源的访问&#xff09; 计数型信号量: 计数型信号量的值一般是大于或者等于2 (生产者和消费者模型) 2.使用技术型信号量完成生产者和消费者模…

掌握 Go 语言的 defer 关键字

关注公众号【爱发白日梦的后端】分享技术干货、读书笔记、开源项目、实战经验、高效开发工具等&#xff0c;您的关注将是我的更新动力&#xff01; 在 Go 语言编程中&#xff0c;文件的输入/输出是一个常见的操作。我们知道&#xff0c;每次打开文件后&#xff0c;都需要在操作…

在Linux系统上搭建Android、Linux和Chrome性能监控和Trace分析的系统

perfetto是知名的Android系统性能分析平台。我们还可以用它去分析Linux系统和Chrome&#xff08;需要装扩展&#xff09;。本文我们只介绍如何安装的验证。 部署 我们使用Docker部署perfetto ui系统。 FROM ubuntu:20.04 WORKDIR /perfetto-ui RUN apt-get update -y RUN ap…

蓝桥集训之阶乘分解

蓝桥集训之阶乘分解 核心思想&#xff1a;线性筛质数 筛出每一个质数后 只要将所有质数的1 2 3 … 次方个数都加上即可 #include <iostream>#include <cstring>#include <algorithm>#include <vector>using namespace std;const int N 1e610;int …

MySQL 数据学习笔记速查表(视图、存储过程、事务)

文章目录 十三、视图1、视图是什么&#xff1f;2、视图的特性&#xff1f;3、视图的作用&#xff1f;4、视图的用途&#xff1f;5、视图的使用&#xff1f;1、基本语法2、创建视图3、调用视图4、视图练习(1) 利用试图简化复杂的联结(2) 利用视图重新格式化检索出的数据(3) 利用…

本地Windows打包启动前端后台

本地Windows打包启动前端后台 1、安装jdk Windows JDK安装 2、Nginx 2.1、将 nginx-1.16.1文件夹复制到D:\home\jisapp目录下 2.2、域名证书配置&#xff1a; 将域名证书放到D:\home\jisapp\ssl\2023目录下->配置nginx.conf文件&#xff08;D:\home\jisapp\nginx-1.22.0…

vconsole助力实现在线代码编辑调试

概述 前面有文章monaco-editor做自己的代码测试工具 &#xff0c;本文书接前文&#xff0c;在代码中加入vconsole工具&#xff0c;可以进行代码调试、查看网络、查看元素等。 效果 vconsole简介 vconsole是一个轻量、可拓展、针对手机网页的前端开发者调试面板。跟框架无关的…