day22-yum部署LAMP

rocky0022 / 2024-02-06 / 原文

LAMP概述

1、什么是LAMP

其实就是

Linux 操作系统
Apache/Nginx web服务器
Mysql/Mariadb
Perl/Php/Python
LAMP:Linux + Apache + MySQL + PHP LAMP 架构(组合)

LNMP:Linux + Nginx + MySQL + php-fpm LNMP 架构(组合
LAMP具有通用、跨平台、高性能、低价格的优势,因此LAMP无论是性能、质量还是价格都是企业搭建网站的首选平台。

2.linux

linux就是一个操作系统,操作系统主要是提供给程序员API,用于构建和运行应用的一个平台。Linux系统主要是以开发者为中心,
Linux的特点是几乎所有的开发任务相关工具,都有很完善的支持,从底层的编译器,make编译工具,到bash脚本,git代码管理,vim编辑器,依赖管理工具等等都很齐全。
Linux几乎都是现有命令行,再由图形化操作接口,更容易实现自动化。

3.apache

Apache Web Server虽然称之为web服务器,但是不是意味着他是一个物理服务器,它只是电脑软件中的一个软件而已,Web服务器的作用是将HTTP请求从前端转发到后端应用上。

4.Mysql

Mysql是一款数据库管理系统,也就是一个存储数据的工具,用户可以自行对数据库进行增加、删除、修改、查询等操作。
MySQL数据库的大容量、快速响应特点。
MySQL是一款关系型数据库,尤其适合Web应用,特别是电商领域,MySQL遍布各种行业、移动、爱立信、惠普、银行、思科、摩托萝拉、等等。

5.php

PHP是一门服务端脚本编程语言,主要用于web开发,常用PHP脚本嵌入HTML源码中执行。

PHP是全球知名的编程语言之一,程序员可以免费试用,PHP支持多种操作系统,开发效率高,支持多种数据库操作。

6.LAMP图解

2.部署LAMP

1.登录阿里云服务器

购买-登录-查看公网ip-ssh登录
查看服务器信息
umane -a
free -m
修改主机名
hostnamectl set-hostname xx-aliyun

2.关闭内置防火墙

目前只能关闭,等后面学完中才好好设置一下
1)从安全组里关闭
2)cat /etc/selinux/config 查看内置防火墙是否关闭,如果没有关闭就vim 改成disabled
3)查看firewalld的状态 systemctl status firewalld
4)查看防火墙规则 iptables -L
如果没关闭-就清空 然后关闭防火墙-禁止自启动

3.查看是否安装了apache mysql php

rpm -qa httpd
rpm -qa mysql
rpm -qa php

4.LAMP环境之Apache安装

① 使用yum命令安装httpd软件包

apache这个软件,在linux中软件包的名字,是叫做httpd,因此得通过yum安装这个httpd
[root@yuchao-aliyun ~]# yum install httpd -y

② 配置/etc/httpd/conf/httpd.conf文件

启动并查看是否运行

[root@AlienCat ~]# systemctl start httpd
[root@AlienCat ~]# netstat -tnlp|grep httpd
tcp6 0 0 :::443 ::😗 LISTEN 21301/httpd
tcp6 0 0 :::80 ::😗 LISTEN 21301/httpd
[root@AlienCat ~]# curl -I 127.0.0.1:80
最后开启阿里云安全组放行80端口即可

安装mysql

下载mysql仓库的配置文件rpm包

安装这个rpm包,只会生成一些配置文件
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm

.安装mysql即可

yum -y install mysql-community-server

启动mysql

systemctl restart mysqld

启动myqsl数据库,需要进行初始化设置,设置密码操作

初始化密码设置
mysql_secure_installation

用新密码登录数据库

mysql -uroot -p

安装 php

[root@yuchao-aliyun local]# yum install php -y

重启httpd服务

apache是需要和php结合起来工作的
[root@yuchao-aliyun local]# systemctl restart httpd

1.在安装php之后,重启httpd
2.php能够自动和apache结合工作了。

测试LAMP

1.进入httpd,apache的网站根目录,也就是这个网页存放的地方。
[root@yuchao-aliyun local]# cd /var/www/html/
[root@yuchao-aliyun html]# vim index.php
[root@yuchao-aliyun html]# pwd
/var/www/html
[root@yuchao-aliyun html]#
[root@AlienCat html]# cat index.php

这里的意思是,我们访问apache,然后看到php脚本,

部署Discuz论坛

下载源码

上传到linux

[root@yuchao-aliyun html]# yum install lrzsz -y
输入rz命令,xshell自动弹出文件接收功能
后面传输大量文件,还是使用FTP工具,一般如XFTP
[root@yuchao-aliyun html]# rz

上传到apache的网页根目录,这个目录下,只要存放了HTML文件,php文件,就能访问到
[root@yuchao-aliyun html]# pwd
/var/www/html
[root@yuchao-aliyun html]# ls
DiscuzX-master.zip index.php

安装unzip
[root@yuchao-aliyun html]# yum install -y unzip

解压缩Discuz代码
[root@yuchao-aliyun html]# unzip DiscuzX-master.zip

这个论坛的源代码,就在这里了。
[root@yuchao-aliyun DiscuzX-master]# pwd
/var/www/html/DiscuzX-master
[root@yuchao-aliyun DiscuzX-master]# ls
LICENSE readme README.md upload utility

最后异步,需要把/var/www/html/DiscuzX-master/upload下代码,全部移动到 /var/www/html 这个位置,且必须在这个位置

登录discuz 网站进行设置

发现报错

1.发现缺少mysql的驱动

安装该驱动即可
yum install php-mysqli -y
[root@yuchao-aliyun html]# yum install php-mysqli -y

2.文件没权限

修改论坛源码文件夹的权限
chmod -R 777 /var/www/html/

告诉apache重启,apache,知道php的功能更新了

systemctl restart httpd

简单总结

简易安装步骤
1.yum安装
yum源没有的就自己下载rpm或者配置自建源
2.按照要求修改配置文件,查看文件权限是否可以使用修改文件权限
3.启动使用

关于linux的软件安装

  • yum是简易版安装,所有的安装目录都是固定的,安装简单、易用,但是缺少定制化,在性能、自动化配置上不够靠谱

    • yum自动的安装软件到 /etc /var /usr 等路径,很可能与被人冲突,或者被yum remove卸载
    • 当你服务器批量管理的时候,你也无法批量操作,很容易出问题,比如,如下机器要批量安装lamp架构
    • 机器A
    • 机器B
    • 机器C,这台机器已经yum装过了mysql,必然会冲突出错。
    • 机器D
  • 因此当你选择源码编译安装,通过脚本对服务器批量化操作,如安装到/opt/自定义文件夹下,出错的几率必然很小很小(mkdir /my_software_dir)

    • 而且编译可扩展很多功能,都是yum无法比拟的
    • 因此掌握编译安装是一个重点

查看公网ip的方式有俩

一、你可以去阿里云控台看
二、技巧如下,由于我们现实在2个公网中的机器,互相访问
[root@AlienCat ~]# curl ifconfig.me
39.105.179.202

软件安装目录

永久关闭selinux

1.关闭selinux,美国的航空安全局,开发的linux内置防火墙
查询selinux状态,基本只有centos8会多些selinux的策略,centos7不用

看到disbaled表示selinux是永久禁止的

[root@AlienCat ~]# getenforce
Disabled

2.修改selinux的配置文件,永久禁止它开机自启
这是selinux配置信息
[root@AlienCat ~]# cat /etc/selinux/config

This file controls the state of SELinux on the system.
SELINUX= can take one of these three values:
enforcing - SELinux security policy is enforced.
permissive - SELinux prints warnings instead of enforcing.
disabled - No SELinux policy is loaded.
SELINUX=disabled
SELINUXTYPE= can take one of three values:
targeted - Targeted processes are protected,
minimum - Modification of targeted policy. Only selected processes are protected.
mls - Multi Level Security protection.
SELINUXTYPE=targeted

运行中
enforcing - SELinux security policy is enforced.
临时关闭中,下次开机还会启动
permissive - SELinux prints warnings instead of enforcing.
永久关闭了
disabled - No SELinux policy is loaded.

修改selinux状态,enforcing > permissive
setenforce 0

想永久关闭,还得修改配置文件,然后reboot
reboot

最后自己练习的搭建截图