2020-10-21

LAMP环境搭建与配置

LAMP架构
在这里插入图片描述

  1. linux+Apache(httpd)+mysql+PHP
  2. PHP网站(google、淘宝、百度)
  3. 三个角色可以在一台机器、也可以分开(httpd和php要在一起)
安装MySQL
  • MySQL的几个常用安装包:rmp、源码、二进制免编译
cd /usr/local/src (软件包放在一起容易管理)
  • 下载源码包最好在官网下载;其他网站下载可能被修改过。
[root@host src]#wget http://mirros.sohu.com/mysql/MySQL-5.6/mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz 
[root@host src]# pwd
/usr/local/src
[root@host src]#ls
mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
[root@host src]#tar -zxvf mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
[root@host src]#mv mysql-5.6.39-linux-glibc2.12-x86_64 /usr/local/mysql(移动位置)
[root@host src]#cd /usr/local/mysql/
[root@host mysql]#useradd -s /sbin/nologin mysql(创建mysql用户)
[root@host mysql]#mkdir -p /data/mysql(创建datadir,数据库文件放这里面)
[root@host mysql]#./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
//--user表示定义数据库的用户的身份
//--datadir表示定义数据库的安装目录
//如有报错,安装yum install -y perl-Module-Install

 - 修改配置文件

# These are commonly set, remove the # and set as required.
   basedir = /usr/local/mysql     //basedir表示MySQL包所在路径
   datadir = /data/mysql	//表示定义存放数据的位置
   port = 3306			//port表示定义MySQL服务监听的端口号
   server_id = 155		//表示该MySQL服务的ID号
   socket = /tmp/mysql.sock		//定义MySQL服务监听的套接字地址
   
[root@host mysql]#cp support-files/mysql-defaultcnf /etc/my.cnf
[root@host mysql]#cp support-files/mysql.server /etc/init.d/mysql(复制脚本文件)
[root@host mysql]#vi /etc/init.d/mysql(修改启动脚本)
    basedir=/usr/local/mysql
    datadir=/data/mysql
[root@host mysql]#chkconfig --add mysql(把mysql服务添加到列表中)
[root@host mysql]#chkconfig mysql on(开机就启动)
Starting MySQL.Logging to '/data/mysql/localhost.localdomain.err'.
 . SUCCESS!   //安装成功

在这里插入图片描述
如若出现这种情况就要安装yum -y install autoconf

安装Apache

  • Apache是一个基金会的名字,httpd才是我们主要安装的软件包,早期他的名字叫Apache
  • Apache官网www.apache.org
[root@host src]#ls
apr-1.6.5.tar.gz       mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
 apr-util-1.6.1.tar.gz  php-5.6.30.tar.gz
 httpd-2.4.46.tar.gz    php-7.1.6.tar.bz2
 //在官网下载源码包:httpd-2.4.39.tar,apr-1.6.5.tar,apr-util-1.6.1.tar
 [root@host src]#tar -zxvf apr-1.6.5.tar.gz
 [root@host src]#tar -zxvf apr-util-1.6.1.tar.gz
 [root@host src]#tar -zxvf httpd-2.4.46.tar.gz
 //解压压缩包
 [root@host src]#cd /usr/local/src/apr-1.6.5
 [root@host apr-1.6.5]#./configure --prefix=/usr/local/apr//如若这里出现报错安装libtool,yum install -y libtool*
 [root@host apr-1.6.5]#make && make install//如若这有错装expat-devel,yum install -y expat-devel
 [root@host mysql]#cd /usr/local/src/apr-util-1.6.1
 [root@host apr-util-1.6.1]#./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/
 [root@host apr-util-1.6.1]#make && make install
 [root@host mysql]#cd /usr/local/src/httpd-2.4.46
 [root@host httpd-2.4.46]#./configure
 --prefix=usr/local/apache2.4 //--prefix指定安装目录
 --enable-so   //--nable-so表示启用DSO
 --with-pcre 
 --with-included-apr
 --enable-modules=most
 --enable-mpms-shared=all  //表示以共享形式安装模块
 --with-mpm=prefork
 [root@host src]#yum install -y pcre pcre-devel (为避免make时出错提前安装数据库文件)
 [root@host src]#make && make install
 [root@host apache2.4]#ls /usr/local/apache2.4/modules
 [root@host apache2.4]#/usr/local/apache2.4/bin/apachectl -M(查看配置文件有哪些文件)//share字样的动态共享模块,static以静态形式存在

安装PHP

PHP的官网:www.php.net

[root@host src]#pwd
/usr/local/src
[root@host src]ls
apr-1.6.5              httpd-2.4.46.tar.gz
  apr-1.6.5.tar.gz       mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
  apr-util-1.6.1         php-5.6.30.tar.gz
  apr-util-1.6.1.tar.gz  php-7.1.6.tar.bz2
  httpd-2.4.46(下载源码包php-5.6.30)
[root@host src]#tar -zxvf php-5.6.30.tar.gz
[root@host src]#yum install -y bzip2 //安装压缩工具包
[root@host src]#tar -jxvf php-7.1.6.tar.bz2
[root@host src]#yum install -ylibxml2-devel/openssl openssl-devel/bzip2 bzip2-devel/libpng libpng-devel/freetype freetype-devel/epel-release/libmcrypt-devel
[root@host src]#cd php-7.1.6
[root@host php-7.1.6]#./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2.4/bin/apxs --with-config-file-path=/usr/local/php/etc  --with-mysql=/usr/local/mysql --with-pdo-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-libxml-dir --with-gd  --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif
[root@host php-7.1.6]#make && make install //编译安装
[root@host php-7.1.6]#cd /usr/local/src/php-5.6.30
[root@host php-5.6.30]#/usr/local/apache2.4/bin/httpd -M //查看加载模块
[root@host php-5.6.30]#cp php.ini-production /usr/local/php/etc/php.ini
[root@host php-5.6.30]#vi /usr/local/apache2.4/conf/httpd.conf //编辑httpd的主配置文件
<Directory />
     AllowOverride none
     Require all denied
 </Directory>
 改成:
 <Directory />
     AllowOverride none  
     Require all granted
 </Directory>    //目的允许所有请求访问
 <IfModule dir_module>
     DirectoryIndex index.html 
 </IfModule>
 改成:
 <IfModule dir_module>
     DirectoryIndex index.html index.php
 </IfModule>
  • LoadModule php5_module modules/libphp5.so注释掉,并改成
    LoadModule php7_module modules/libphp7.so

测试配置文件是否正确

[root@host ~]#/usr/local/apache2.4/bin/apachectl -t //检查配置文件是正确
Syntax OK
[root@host ~]#/usr/local/apache2.4/bin/apachectl start //启动http
[root@host ~]#cd /usr/local/apache2.4/conf
[root@host conf]#netstat -lnp |grep httpd //如若不行yum install net-tools
tcp6       0      0 :::80                   :::*
[root@host conf]#curl localhost
<html><body><h1>It works!<h1><body><html>
 //使用curl命令简单测试,显示了就是成功
 [root@host conf]#vi /usr/local/apache2.4/htdocs/test.php
 <?php
 echo  “php解析正确”
?>
[root@host conf]#curl localhost/1.php
 php解析正确  //如显示此信息则PHP解析正确
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值