搭建LAMP环境

yum安装

相关命令

http配置文件:/etc/httpd/conf/httpd.conf
        http管理:service httpd start/stop/restart
http默认虚拟主机:/var/www/html

        mysql管理:service mysqld start/stop/restart
修改默认的root密码:/usr/bin/mysqladmin -u root password '123456'
        登录mysql:/usr/bin/mysql -u用户名  -p密码

本地安装
执行安装命令

#删除php相关文件
yum -y remove php*
#安装php
yum -y install php httpd mysql-server
#启动服务器
service httpd start
service mysqld start
#创建phpinfo文件
echo ' /var/www/html/index.php
将80 , 3306 添加到防火墙之外
vi  /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
service iptables restart  #重启防火墙
#设置访问端口vi /etc/httpd/conf/httpd.conf
#在277 行: ServerName localhost:80
ifconfig 查看ip地址 进行访问测试

外网安装
在外购买服务器,进行连接 执行安装命令

#删除php相关文件
yum -y remove php*
#更新yum源(默认yum源中无php7)
rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
#安装php
yum -y install php70w httpd mysql-server
# 启动服务器 service httpd start
service mysql start
#创建phpinfo文件
echo ' /var/www/html/index.php
通过服务器的ip地址进行访问测试
#登录mysql  
mysql -uroot -p

源代码安装
源代码安装准备
先将3306端口和80添加到防火墙之外

vi  /etc/sysconfig/iptables

搭建LAMP环境_第1张图片

步骤二:重启防火墙

service iptables restart

步骤三:卸载默认安装的mysql和apache

步骤1:分别通过【rpm -qa | grep mysql】和【rpm -qa | grep http】查看已经安装的软件包名称
步骤2:通过【rpm -e 查看的包名 --nodeps】强制卸载
步骤3:再通过【rpm -qa | grep mysql】和【rpm -qa | grep http】检查是否全部卸载

步骤四:环境目录初始化

# 创建目录
mkdir -p /php/tools
mkdir -p /php/wwwroot
mkdir -p /php/server/php 
mkdir -p /php/server/mysql 
mkdir -p /php/server/apache
mkdir -p /php/server/data  # MySQL数据存放目录

步骤五: 通过WinSCP 将本地安装包上传到服务器/php/tools目录中

准备工作end--------------------------------------------

查看进程

      查看所有进程:ps  -A
       查看指定进程:ps  -A  |  grep   名称
       关闭进程:killall 名称

**源代码一般安装步骤**
   步骤1:解压                      (tar命令)
   步骤2:进入到解压目录     (cd命令)
   步骤3:配置(收集服务器信息、指定安装目录等)     
            ./configure --prefix=指定安装目录
   步骤4:编译                      (make)    
   步骤5:安装                     (make install)

mysql安装
安装mysql所需依赖

yum -y install gcc gcc-c++ cmake ncurses-devel

安装mysql

cd /php/tools/mysql                         #进入tools目录
tar -zxvf mysql-5.6.35.tar.gz                #解压MySQL安装包
cd mysql-5.6.35                              #进入解压目录
#配置mysql :
(注: mysql 5.0以上配置文件使用cmake)
cmake \  #\ 代表命令未结束  将下面命令连贯起来
-DCMAKE_INSTALL_PREFIX=/php/server/mysql \
-DMYSQL_DATADIR=/php/server/data \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci

安装:

make && make install (可能会安装很久 大约10分钟  根据网速不同而不同)

配置mysql
步骤1 : 赋值安装目录中的mysql配置文件

\cp -r /php/tools/mysql/mysql-5.6.35/support-files/my-default.cnf /etc/my.cnf

步骤2 : 修改mysql配置文件 (声明mysql数据存放目录)

vi  /etc/my.cnf  #打开配置文件
#在第19[mysqld]下设置这一行
datadir = /php/server/data

步骤3 : 创建mysql用户组并创建用户加入用户加入用户组

groupadd mysql
useradd -g mysql -s /sbin/nologin mysql

步骤4 : 初始化数据库 (执行下述 会在data目录下生产mysql下生产mysql/test 等默认数据库)

/php/server/mysql/scripts/mysql_install_db \
--basedir=/php/server/mysql \
--datadir=/php/server/data \
--user=mysql

步骤5 : 启动mysql服务(注: &表示后台启动)

/php/server/mysql/bin/mysqld_safe --user=mysql &

步骤6 : 验证mysql服务是否启动成功(相当于 win查看进程)

ps -A | grep mysql

步骤7 : 初始化数据库,设置root账户的密码 (默认密码空)

/php/server/mysql/bin/mysql -uroot -p
#删除测试数据库 && 删除本机匿名连接的空密码帐号
drop database test;                           
delete from mysql.user where user='';  
# 修改密码
update mysql.user set password=password('admin888') where user='root';
flush privileges

安装Apache
安装 zlib (apache 所需依赖)

  cd /php/tools/apache                    #进入tools目录
  tar -zxvf zlib-1.2.5.tar.gz                 #解压zlib安装包
  cd zlib-1.2.5                           #进入解压目录
  ./configure                                 #这个配置编译命令不要加目录参数
  make && make install  

安装apache

  cd /php/tools/apache                    #进入tools目录
  tar  -jxvf  httpd-2.2.19.tar.bz2        #解压apache安装包
  cd httpd-2.2.19                         #进入解压目录
  #配置:
./configure --prefix=/php/server/apache \
--enable-modules=all \
--enable-mods-shared=all \
--enable-so
#安装
make && make install

测试 :

vi /php/server/apache/conf/httpd.conf  

启动服务/停止/重启

/php/server/apache/bin/apachectl start 启动 / stop停止 / restart

查看ip地址 在浏览器中输入ip地址 看到 "it works!" 即成功

可在/php/server/apache/htdocs中的index.html中修改默认登录页

安装PHP
先通过 yum 安装 所需 文件

yum -y install libxml2 libxml2-devel

安装:

cd /php/tools/php
tar -jxvf php-7.2.6.tar.bz2 
cd php-7.2.6
#
./configure --prefix=/php/server/php \
--with-apxs2=/php/server/apache/bin/apxs \
--with-pdo-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-zlib \
--enable-mbstring=all \
--enable-mbregex \
--enable-shared
#
make && make install

配置Apache 支持PHP
将php.ini配置文件到指定目录

\cp -r /php/tools/php/php-7.2.6/php.ini-development /php/server/php/lib/php.ini

修改Apache配置文件

 vi /php/server/apache/conf/httpd.conf
 #在httpd.conf(Apache主配置文件)中增加:
    AddType application/x-httpd-php .php

停止 并 启动Apache

/php/server/apache/bin/apachectl stop  # 停止
/php/server/apache/bin/apachectl start # 启动

写入内容并查看效果

echo ' /php/server/apache/htdocs/test.php
通过http://虚拟机IP

管理 优化 : 将apache mysql 加为系统服务

    发现:通过上述命令管理apache或mysql麻烦
    解决:加入系统服务,通过命令(service 服务名 start/stop/restart)管理
    步骤:百度CentOS下将apache添加到服务
#1.添加apache的服务脚本
    \cp -r /php/server/apache/bin/apachectl /etc/rc.d/init.d/httpd
    ln -s /etc/rc.d/init.d/httpd /etc/rc.d/rc3.d/S61httpd
#2.编辑httpd脚本,在第二行添加如下注释信息
vi /etc/rc.d/init.d/httpd
    #Comments to support chkconfig on RedHat Linux
    #chkconfig: 2345 90 90
    #description:http server
#3.修改脚本使其支持chkconfig
    chkconfig --add httpd
    chkconfig --level 2345 httpd on
#4.重启服务
    service httpd restart
#CentOS下将MySQL添加到服务
#1.将mysql.server这个文件copy到/etc/init.d/目录下,并更名为mysql
    \cp -r /php/tools/mysql/mysql-5.6.35/support-files/mysql.server /etc/init.d/mysql
#2. 给mysql这个文件赋予“执行”权限 && 加入到开机自动运行
    chmod 755 /etc/init.d/mysql 
    chkconfig --add mysql
#3.重启服务
     service mysql restart  

通过LAMP一键安装包搭建

   步骤1:先给通过源代码编译安装好的Linux系统创建快照
   步骤2:回滚到初始化状态(准备通过一键安装包再次安装)
   步骤3:获取LAMP一键安装包安装

wget http://dl.wdlinux.cn:5180/lanmp_laster.tar.gz
tar zxvf lanmp_laster.tar.gz
sh lanmp.sh
#选择 1 
等待安装

通过Docker搭建LAMP环境

1、阿里云购买ubuntu系统

什么是Docker

Docker名词(技术),通过该技术可以快速搭建环境(可以理解为VM软件)
PHP名词(语言),通过该技术可以快速开发网站

原理

搭建LAMP环境_第2张图片

安装Docker
检测是否安装docker软件

0.docker -v  如果下面显示 installed. You can install it by typing # 则未安装

步骤

步骤1 : "sudo wget -qO- https://get.docker.com/ | sh"
安装成功 ,出现warning忽略
步骤2 : sudo usermod -aG docker 当前用户名
docker -v  #在检测是否安装成功

语法 :

// 使用步骤:获取镜像(docker pull) -> 通过镜像创建带环境的系统(docker run) 
   命令
docker  pull     获取镜像(image)
docker  images  列出镜像(image)
docker  rmi     删除镜像(image)
docker  stop    container ID
docker  run     运行container (container在docker中可以理解为装好环境的系统)

--name                     自定义容器名称
-d                         容器后台运行   
-p 当前系统端口:容器端口   端口映射(容器内部端口映射外部)
-v 当前系统目录:容器目录   目录映射
docker  ps      列出container
开启和容器交互终端(进入容器)
docker  exec  -i -t  通过dockerps查看的name名  /bin/bash

搭建LAMP环境
从hub.docker.com 查看想要的版本

步骤 2 : 搭建

注:需要添加8083防火墙例外 (如何添加?) 在安全组里添加规则

#3.获取镜像
docker pull php:5.6.33-apache
#4.创建项目站点目录
sudo mkdir -p /www
sudo vi /www/index.php
#5.创建带有环境的系统
docker run -v  /www:/var/www/html  -p 8083:80 -d php:5.6.33-apache

常用命令

搜文件(find)
作用:搜索指定目录下的文件

语法:find 路径 -name 文件名

场景:新环境找mysql或apache配置文件

find / -name httpd.conf
find / -name my.cnf
find / -name passwd

搜文件内容(grep)
作用:匹配指定文件中的内容

语法:grep 参数 内容 路径及文件名

参数:i - 不区分大小写 v - 匹配除搜索的内容以外的数据

场景:项目BUG产生的日志搜索

grep -iv aa /t2.php  //v匹配除了内容以外的数据
grep aa / t2.php   检索出数据=aa
grep -i aa /t2.php  增加 i 参数 不区分大小写

搭建LAMP环境_第3张图片

管道 ( | )
作用:将“|”左侧的数据,交给右侧进一步处理

语法:ls | grep 内容

语法:ls | more

搭建LAMP环境_第4张图片

磁盘管理命令
语法 du -h

作用:查看 目录信息

cd /home
du -h

语法 : df -h

作用 : 查看磁盘信息

cd /home
df -h

进程管理

   查看所有进程:ps  -A
   查看指定进程:ps  -A  |  grep   名称
   关闭进程:killall 名称

挂载
什么是挂载

说明:在Linux插入外部设备无法直接访问,需要通过手动挂载到指定目录中才可以查看
挂载:将硬件设备对应文件名映射到指定目录下

语法 :

挂载:mount  设备文件  挂载目录
取消:umount 挂载目录

通过挂载光驱安装firfox

在虚拟机设置中 勾选连接

创建挂载目录并挂载

#步骤1:创建挂载目录或创建映射系统光盘/镜像的目录
    mkdir -p /mnt/cd
#步骤2:挂载(也就是将/dev/cdrom映射到/mnt/cd目录中)
    muunt /dev/cdrom/mnt/cd
#步骤3:验证
    /mnt/cd

挂载目录中的Fiefox (rpm包)

rpm -e  firfox -10.0.12-1.r16.centos.i686(rpm名称) --nodeps

安装firefox

rpm -ivh  firefox ........(名称).rpm(后缀)

Linux安装卸载软件不同方式优缺点(补充)

rpm 命令 (文件后缀 .rpm )

说明:安装简单,安装速度快 
缺点:自定义性差,依赖性强 
举例:比如安装 A 软件,提示先要安装B软件,安装B软件,又提示先安装C软件,安装C软件,又提示先安装D软件。

源代码编译安装 (文件后缀 .tar.gz 或者 .tar.bz2 )

说明:开源,自由定制 
缺点:编译时间较长(先将源代码->编译->二进制文件->安装),一旦报错解决相对困难

智能yum安装

好处:快速安装
缺点:要求服务器有网络,不灵活,不可以设置自己需要的具体软件版本。

你可能感兴趣的:(环境搭建,lamp)