连载篇------第一篇
- 前言:LAMP平台概述
- 一,Apache简介
- 二,编译安装
- 步骤一:搭建yum本地源
- 步骤二:编译安装apache服务
- 步骤三:安装编译环境
- 步骤四:测试
- 二,构建虚拟主机
- 基于域名的虚拟主机
- 步骤一:在主机映射hosts文件里,做主机映射
- 步骤二:加载独立模块httpd-vhosts
- 步骤三:测试
- 基于IP地址的虚拟主机
- 步骤一:添加网卡配置,并修改配置信息;
- 步骤二:更改配置文件信息
- 步骤三:测试
- 基于端口的虚拟主机
- 步骤一:修改httpd-vhosts.confi配置文件
- 步骤二:测试
前言:LAMP平台概述
- 什么是LAMP?
目前最为成熟的一种企业网站应用模式,可提供动态的Web站点应用及开发环境 - 构成组件
Linux, Apache ,Mysql ,PHP/Perl/Python - 优势:
成本低廉
可定制,易于开发
方便易用,安全和稳定
在虚拟环境下编译安装的LAMP, 详细描述如何源码编译安装服务。
制作不易,脑壳摇摇欲坠,有错请包涵,指出!!!!!
一,Apache简介
- 起源咱们就不说了,有兴趣可以专门搜索一下
- 官方站点:http://httpd.apache.org/
- 主要特点
开放源代码,跨平台应用
支持多种网页编程语言
模块化设计,运行稳定,良好的安全性- 软件版本
◆ 1 x
目前最高版本是1.3,运行稳定
向下兼容性较好,但缺乏一些较新的功能
◆2 x
目前最高版本是2.4
具有更多的功能特性
与1.X相比,配置管理风格存在较大差异
- 软件版本
二,编译安装
- 编译安装的优点
●具有较大的自由度,功能可定制
●可及时获得最新的软件版本
●普遍适用于大多数Linux版本,便于移植使用 - 获得Apache服务器的源码包
参考地址: http://httpd.apache.org/download.cgi
步骤一:搭建yum本地源
安装的前提是在yum环境已经搭建好了;没搭建的话首先要搭建yum源
1.mount /dev/cdrom /mnt
2.echo mount /dev/cdrom /mnt iso9660 defaults 0 0 >> /etc/fstab
3.cd /etc/yum.repos.d/
4.mkdir bakup
5.mv C* bakup
6.cp backup/CentOS-Base.repo local.repo
7.cat > local.repo <<EOF
[centos]
name=centos
baseurl=file:///mnt
gpgcheck=0
enabled=1
#gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
EOF
8. yum clean all
9.yum makecache
步骤二:编译安装apache服务
1.所需安装包:(有安装包的话,将安装包导入/opt xfp软件也可以)
apr-1.6.2.tar.gz
apr-util-1.6.0.tar.gz
httpd-2.4.29.tar.bz2
2.cd /opt
3.解压文件
tar zxvf apr-1.6.2.tar.gz
tar zxvf apr-util-1.6.0.tar.gz
yum -y install bziop2 ###解压bzip2的压缩包,需要下载解压工具
tar jxvf httpd-2.4.29.tar.bz2
4. mv apr-1.6.2 httpd-2.4.29/srclib/apr #将解压的apr apr-util 放进解压后的htpd/srclib/里咱们指定的文件
5.mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util
步骤三:安装编译环境
1. yum -y install gcc gcc-c++ make pcre-devel expat-devel perl
2. cd /opt/ httpd-2.4.29
(在httpd下编译安装,指定路径,和其它配置模块)
3. ./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi
4. 4.make && make install ###先make -j3 然后make install 也可以 -j3是你核心数,最大不要超过虚拟机的核心数
5. ####优化执行路径####
ln -s /usr/local/httpd/conf/httpd.conf /etc/
ln -s /usr/local/httpd/bin/* /usr/local/bin/
httpd -v ###查看下HTTP版本
6.###建立[service].service 配置文件添加系统给服务####
在/lib/systemd/system/目录下,建立一个以.service 结尾的单元(unit)配置文件,用于控制由 systemd 管理或监控的 httpd 服务
cd /lib/systemd/system/
vi httpd.service
[Unit]
Description=The Apache HTTP Server
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/httpd/logs/httpd.pid
ExecStart= /usr/local/bin/apachectl $OPTIONS
ExecrReload= /bin/kill -HUP $MAINPID
[Install]
WantedBy=multi-user.target
7. systemctl start httpd ##开启服务
systemctl enable httpd ###开机自启http
systemctl is-enable httpd ###检查HTTP单元是否启动
8.####httpd.conf修改配置文件###
vi /usr/local/httpd/conf/httpd.conf
ServerName www.51xit.top:80 ###更改下网站域名
systemctl restart httpd ####重启httpd服务
步骤四:测试
9.###用系统的浏览器验证###
netstat -anpt | grep 80
验证成功
(网页默认显示内容为:/usr/local/httpd/htdocs/index.html)
10.vi /usr/local/httpd/htdocs/index.html ##可以更改网页显示内容
- 真机测试网页
- 虚拟机测试
首先在hosts文件做下主机映射,可以测试输入域名,也可以直接输入ip;
注:lynx是文本浏览器,需要安装,yum -y install lynx
二,构建虚拟主机
- 虚拟Web主机
●在同一台服务器中运行多个Web站点,其中每-个站点并
不独立占用一台真正的计算机 - httpd支持的虚拟主机类型
●基于域名的虚拟主机
●基于IP地址的虚拟主机
●基于端口的虚拟主机
基于域名的虚拟主机
步骤一:在主机映射hosts文件里,做主机映射
●为虚拟主机准备网页文档
1.创建目录
mkdir -p /opt/www/html/51xit.top
mkdir -p /opt/www/html/52xit.top
2. 创建网页文档 (index.html是网页编辑文档 <h1> ...</h1>之间的是自定内容)
echo "<h1>woaihgg</h1>" > /opt/www/html/51xit.top/index.html
echo "<h1>woaias</h1>" > /opt/www/html/52xit.top/index.html
3.vim /usr/local/httpd/conf/extra/httpd-vhosts.conf
<VirtualHost *:80> ####设置 51xit.top 虚拟站点区域
DocumentRoot "/opt/www/html/51xit.top"
ServerName www.51xit.top
ErrorLog "logs/www.51xit.top.error_log"
CustomLog "logs/www.51xit.top.access_log" common
<Directory "/opt/www/html"> ####设置目录访问权限
Require all granted
</Directory>
</VirtualHost>
<VirtualHost *:80> ####设置 52xit.top 虚拟站点区域
DocumentRoot "/opt/www/html/52xit.top"
ServerName www.52xit.top
ErrorLog "logs/www.52xit.top.error_log"
CustomLog "logs/www.52xit.top.access_log" common
<Directory "/opt/www/html"> ####设置目录访问权限
Require all granted
</Directory>
</VirtualHost>
当虚拟 Web 主机的数量较多时,建议使用独立的虚拟主机配置文件,然后在 httpd.conf
文件中通过 Include 加载这些配置。这样可以将对 httpd.conf 文件的改动减至最少,更方便
配置内容的维护。
步骤二:加载独立模块httpd-vhosts
在主配置文件里把然后去掉vhosts.conf前面那个#号
vi /etc/httpd.conf
步骤三:测试
- 在主机名映射文件里hosts ,添加主机名映射
- ping 测试一下,确保能和服务主机通信!
- 验证
基于IP地址的虚拟主机
步骤一:添加网卡配置,并修改配置信息;
1.cd /etc/sysconfig/network-scipts/
2.cp ifcfg-ens33 ifcfg-ens36
复制ifcfg-ens33的配置,把信息更改为ens36
3.vi ifcfg-ens36
4.systemctl restart network
5. ifconfig #查看网卡配置,发现ens36没有开启成功,重新关闭,再开启网卡
ifdown ens36
ifup ens36
步骤二:更改配置文件信息
- vi /usr/local/httpd/conf/extra/httpd-vhosts.conf
2.咱们做的那个路径优化软连接,可以直接从/etc/下面文件做更改,一样的
vi /etc/httpd.conf
3.重启服务
systemctl restart httpd
步骤三:测试
第一个网卡虚拟机:20.0.0.15
1.同样也是hosts文件里添加映射关系
第二个网卡真机测试:192.168.100.15
1.在真机用到hosts的编辑软件,直接添加,保存
基于端口的虚拟主机
步骤一:修改httpd-vhosts.confi配置文件
2.主配置文件添加监听端口号
步骤二:测试
1.虚拟机测试
2.真机测试