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

参考:icon-default.png?t=N7T8http://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/2741.检查当前安装的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_642、设置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.rpmWebtatic 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.rpmWebtatic 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_64php5.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_64php7.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_644.安装PHP FPM
php5.5的版本:yum install php55w-fpm php55w-opcache
php5.6的版本:yum install php56w-fpm
php7.0的版本:yum install php70w-fpm

部署LAMP

和LNMP步骤一样 

主要是修改Apache的配置文件

/etc/httpd/conf/httpd.conf

  • 修改Apache配置:编辑Apache的配置文件,通常是/etc/httpd/conf/httpd.conf或/etc/apache2/apache2.conf,具体位置可能因Linux发行版而异。
  • 添加PHP模块:在Apache配置文件中,您需要加载PHP模块。这通常涉及到添加类似LoadModule php7_module modules/libphp7.so的指令。
  • 指定处理PHP文件的指令:为了让Apache正确处理PHP文件,需要在配置文件中添加指令,如AddType application/x-httpd-php .php,以及确保DirectoryIndex包含index.php。
  • 保存并退出编辑器
  • 重启Apache服务
  • 写一个测试PHP,然后浏览器访问

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微信小程序 电影院售票选座票务系统5w7l6

uni-app框架&#xff1a;使用Vue.js开发跨平台应用的前端框架&#xff0c;编写一套代码&#xff0c;可编译到Android、小程序等平台。 框架支持:springboot/Ssm/thinkphp/django/flask/express均支持 前端开发:vue.js 可选语言&#xff1a;pythonjavanode.jsphp均支持 运行软件…

OpenCV单通道图像按像素成倍比例放大(无高斯平滑处理)

OpenCV中的resize函数可以对图像做任意比例的放大(/缩小)处理&#xff0c;该处理过程会对图像做高斯模糊化以保证图像在进行放大&#xff08;/缩小&#xff09;后尽可能保留源图像所展现的具体内容&#xff08;消除固定频率插值/采样带来的香农采样信息损失&#xff09;&#x…

TCP客户端及服务器端开发实践

一、TCP客户端及服务器端开发实践 1、TCP网络应用程序开发分类 ① TCP客户端应用程序开发 ② TCP服务器端应用程序开发 客户端程序是指运行在用户设备上的程序&#xff0c;服务端程序是指运行在服务器设备上的程序&#xff0c;专门为客户端提供数据服务。那如何记忆呢&…

Centos7安装jdk

下载上传并解压 下载 jdk-8u201-linux-x64.tar.gz 链接&#xff1a;https://pan.baidu.com/s/13WWt6ArVYXt8QmdU3Z3zOg?pwdwxyu 提取码&#xff1a;wxyu 上传 上传到服务器/opt目录 解压 cd /opt tar -zxvf jdk-8u201-linux-x64.tar.gz 配置环境变量 vi /etc/profil…

Vuex状态管理

1.什么是状态管理 在开发中&#xff0c;我们会让应用程序需要处理各种各样的数据&#xff0c;这些数据需要保存在我们应用程序中的某一个位置&#xff0c;对于这些数据的管理我们就 称之为是状态管理。 在Vue开发中&#xff0c;我们使用组件化的开发方式: 1.在组件中我们定义…

【相机方案】智能驾驶的域控采用的“串行器和解串器”方案的总结(持续更新),SerDes,GMSL

SerDes是Serializer/Deserializer的缩写&#xff0c;即串行器和解串器。由于同轴线的传输延迟几乎可以忽略不计&#xff08;ns级别&#xff09;&#xff0c;相当于将原来只能短距离传输的高速并行信号(MIPI/I2C/CLK等)的传输距离延长&#xff0c;真正做到高带宽、低延迟、长距离…

蓝桥杯刷题--RDay5

清理水域--枚举 8.清理水域 - 蓝桥云课 (lanqiao.cn)https://www.lanqiao.cn/problems/2413/learning/?page1&first_category_id1&second_category_id3&tags2023 小蓝有一个n m大小的矩形水域&#xff0c;小蓝将这个水域划分为n行m列&#xff0c;行数从1…

【QT+QGIS跨平台编译】056:【pdal_kazhdan+Qt跨平台编译】(一套代码、一套框架,跨平台编译)

点击查看专栏目录 文章目录 一、pdal_kazhdan介绍二、pdal下载三、文件分析四、pro文件五、编译实践一、pdal_kazhdan介绍 pdal_kazhdan 是 PDAL(Point Data Abstraction Library)相关的 Kazhdan 算法的实现。PDAL 是一个用于处理和分析点云数据的开源库,而 Kazhdan 算法通常…

AI提速 OpenAI 新模型GPT-5今年上线?

这两天&#xff0c;有关OpenAI新模型 GPT-5的消息又多了起来。有知情人士称&#xff0c;OpenAI将在今年年中的某个时候发布GPT-5&#xff0c;很可能是在今年夏天期间。OpenAI CEO 萨姆奥特曼在一次播客采访中透露“GPT-5的智能水平得到提升”。 有趣的是&#xff0c;播客的主理…

Latex表格制作详细教程(table, tabular, multirow, multicolumn)

一、简单表格制作 Latex表格需要用到 table 和 tabular 环境。其中 table 环境里写表格的标题(caption&#xff09;、表格的位置之类的。 tabular 环境则是绘制表格的内容。一个简单的表格绘制代码如下所示&#xff1a; \documentclass{article}\begin{document}\begin{table…

三防平板定制服务:亿道信息与个性化生产的紧密结合

在当今数字化时代&#xff0c;个性化定制已经成为了市场的一大趋势&#xff0c;而三防平板定制服务作为其中的一部分&#xff0c;展现了数字化技术与个性化需求之间的紧密结合。这种服务是通过亿道信息所提供的技术支持&#xff0c;为用户提供了满足特定需求的定制化三防平板&a…

猫冻干可以每天吃吗?5大优选品牌脆弱肠胃闭眼入

近年来&#xff0c;冻干猫粮作为备受追捧的高品质猫粮&#xff0c;吸引了越来越多养猫人的关注&#xff0c;对于像我这样的养猫达人来说&#xff0c;早已尝试并认可了冻干喂养。但对于新手来说&#xff0c;他们可能会感到困惑&#xff1a;冻干到底是什么&#xff1f;猫冻干可以…

[大模型]大语言模型量化方法对比:GPTQ、GGUF、AWQ

在过去的一年里&#xff0c;大型语言模型(llm)有了飞速的发展&#xff0c;在本文中&#xff0c;我们将探讨几种(量化)的方式&#xff0c;除此以外&#xff0c;还会介绍分片及不同的保存和压缩策略。 说明&#xff1a;每次加载LLM示例后&#xff0c;建议清除缓存&#xff0c;以…

如何远程监控员工的电脑

如何远程监控员工的电脑 为什么要对员工使用电脑的行为进行监控呢&#xff1f;对企业来说是有其必要性的。其必要性主要体现以下4个方面。 1.数据安全与知识产权保护 防止数据泄露&#xff1a;企业内部往往存储着大量的敏感信息&#xff0c;如客户数据、财务资料、商业秘密、…

23linux 自定义shell文件系统

打印环境变量&#xff0c;把当前子进程所有环境变量打印出来 环境变量也是一张表&#xff08;指针数组以null结尾&#xff0c;最后条件不满足就退出了 &#xff09; 用子进程调用 结论1 当我们进行程序替换的时候 &#xff0c;子进程对应的环境变量&#xff08;子进程的环境变…

蓝桥杯第六届c++大学B组详解

前言&#xff1a; 看了很多博客以及视频讲解&#xff0c;感觉都不是很清楚&#xff0c;比较模棱两可&#xff0c;所以干脆自己一边想&#xff0c;一边写博客&#xff0c;也可帮助到其他人&#xff0c;都是根据自己的逻辑来尽量清楚简单的讲清楚题目&#xff0c;喜欢的不要吝啬三…

RISC-V/ARM mcu OpenOCD 调试架构解析

Risc-v/ARM mcu OpenOCD 调试架构解析 最近有使用到risc-v的单片机&#xff0c;所以了解了下risc-v单片机的编译与调试环境的搭建&#xff0c;面试时问到risc-v的调试可参看以下内容。 risc-v根据官方的推荐&#xff0c;调试器服务是选择OpenOCD&#xff0c;DopenOCD(开放片上…

ros小问题之rosdep update time out问题

在另外一篇ROS 2边学边练系列的文章里有写碰到这种问题的解决方法&#xff08;主要参考了其他博主的文章&#xff0c;只是针对ROS 2做了些修改调整&#xff09;&#xff0c;此处单拎出来方便查找。 在ROS 2中执行rosdep update时&#xff0c;报出如下错误&#xff1a; 其实原因…

Java设计模式:外观模式之优雅门面(九)

码到三十五 &#xff1a; 个人主页 心中有诗画&#xff0c;指尖舞代码&#xff0c;目光览世界&#xff0c;步履越千山&#xff0c;人间尽值得 ! 在软件工程中&#xff0c;设计模式是解决常见设计问题的经验总结&#xff0c;它为开发者提供了一种通用的、可复用的解决方案。外…

根证书和中间证书安装配置

下载根证书 根证书是建立信任链的基础。一旦客户端安装了根证书&#xff0c;它即可验证由该根证书签发的所有证书。这使得客户端可以信任与该根证书相关的所有服务器和应用程序&#xff0c;从而建立起一个完整的信任链。 如果您的业务用户通过浏览器访问您的Web业务&#xff…