Linux _ apache服务器部署 不同域名—访问不同网站(多网站)

本文涉及的产品
.cn 域名,1个 12个月
简介: Linux _ apache服务器部署 不同域名—访问不同网站(多网站)

Apache 服务器上部署多个网站的  优点好处:


资源共享和最佳利用: 通过在同一台服务器上托管多个网站,可以更有效地利用硬件资源。这样,多个网站可以共享服务器的计算能力、内存和存储空间,提高资源利用率。


成本效益: 部署多个网站在同一服务器上通常比购买多台服务器更经济。这对于小型和中小型网站主来说,可以有效降低托管成本。


简化管理: 通过将多个网站集中在一个服务器上,可以简化服务器管理和维护。管理员只需关注一台服务器的配置、监控和维护工作,而不是多台服务器。


共享 SSL 证书和 IP 地址: 如果网站使用相同的 SSL 证书和 IP 地址,它们可以在同一服务器上共享这些安全设置,从而简化 SSL 证书的管理。


灵活性和扩展性:Apache 服务器可以通过配置不同的虚拟主机(Virtual Hosts)来支持多个网站。每个虚拟主机可以有独立的配置,包括不同的域名、目录结构、日志等,从而提供灵活性和扩展性。


总体而言,部署多个网站在一个 Apache 服务器上是一种有效的方式,以满足多个网站主的需求,提高服务器资源的利用率,同时简化管理和维护过程。


实验 :CentOS7  


服务端配置

首先必须要安装httpd

yum  install  -y  httpd

进入httpd的配置文件(了解)

vim /etc/httpd/conf/httpd.conf


它包含了服务器的全局设置、模块加载、虚拟主机配置、安全设置等。以下是一些主要部分的详细解释:httpd.conf

全局配置

ServerRoot "/etc/httpd"      指定Apache服务器的根目录。

Listen 80                Listen: 指定服务器监听的IP地址和端口。



User apache

Group apache                User和 : 指定Apache进程运行的用户和组。Group



ServerAdmin webmaster@localhost        ServerAdmin: 指定服务器管理员的电子邮件地址。


<Directory />:此块定义应用于服务器根目录的配置指令。在此上下文中,它指定根目录本身的配置设置。


AllowOverride none:此指令控制哪些指令可以放置在文件中。该选项意味着不允许来自文件的任何指令覆盖服务器配置中指定的设置。.htaccessnone.htaccess


Require all denied:此指令设置指定目录的访问控制。在这种情况下,它拒绝所有用户(或所有请求)的访问,从而有效地禁止对根目录的任何请求。


此配置具有相当严格的限制性,通常用于保护 Web 服务器的根目录。它确保任何文件都无法覆盖这些设置,并拒绝访问所有请求。.htaccess

<Directory "/var/www/html">

   Options Indexes FollowSymLinks

   AllowOverride None

   Require all granted

</Directory>

<Directory>块:包含目录相关的配置,如权限、访问控制等


相关步骤

创建两个文件夹(注意路径)


1. 创建第一个网页

mkdir   /var/www/html/ hello

往文件夹里边写入index.html 网页文件

echo  helloooo   >    /var/www/html/hello/index.html

2. 创建第二个网页

mkdir   /var/www/html/ onhello

往文件夹里边写入index.html 网页文件

echo  hellloonnnnnnnnn >    /var/www/html/onhello/index.html


3. 定义虚拟主机*

当我们需要添加网页的时候就需要  

进入配置文件

vim /etc/httpd/conf/httpd.conf

需要添加如下配置命令

添加第一个网站的虚拟主机


<VirtualHost 192.168.180.181:80>                

               DOcumentRoot "/var/www/html/hello"

               ServerName  www.hello.com

               <Directory "/var/www/html/hello">

               AllowOverride None

               Require  all granted

               </Directory>

</VirtualHost>


添加第二个网站的虚拟主机


<VirtualHost 192.168.180.181:80>                

               DOcumentRoot "/var/www/html/onhello"

               ServerName  www.onhello.com

               <Directory "/var/www/html/onhello">

               AllowOverride None

               Require  all granted

               </Directory>

</VirtualHost>


配置了解如下:
 
<VirtualHost 192.168.180.188:80>: 这一行指定了虚拟主机的配置开始,
指定了监听的 IP 地址和端口号。 在这里,虚拟主机会监听在 IP 地址 192.168.180.188 
和端口号 80 上。
 
DocumentRoot "/var/www/html/hello": 指定了虚拟主机的文档根目录,
也就是虚拟主机所对应的网站文件存放的位置。 在这里,
文档根目录被设置为 "/var/www/html/hello"。
 
ServerName www.hello.com: 指定了虚拟主机的域名。
这个虚拟主机会响应访问 www.hello.com 的请求。
 
<Directory "/var/www/html/hello">: 这一行开始了针对指定目录的配置块。 
在这里,针对 "/var/www/html/hello" 目录进行配置。
 
AllowOverride None: 指定了在该目录下不允许使用  文件覆盖 Apache 服务器的配置。 
文件通常包含与目录相关的配置。.htaccess.htaccess
 
Require all granted: 指定了对该目录的访问权限。 在这里,所有请求都被授予访问权限。
 
</Directory>: 这一行标志着针对指定目录的配置块的结束。
 
</VirtualHost>: 这一行表示虚拟主机的配置结束。

给大家看一下我的配置


完成此配置后一定要重启httpd服务

systemctl    restart   httpd

检测httpd服务

httpd        -t                如果出现其他错误只要能访问就没有影响


客户端测试

关闭防火墙

systemctl  stop   firewalld

网络配置(IP映射)

/etc/hosts

/etc/hosts是一个用于在计算机上进行 IP 地址与主机名映射的本地配置文件。它允许您手动指定 IP 地址和相应的主机名,以绕过 DNS 解析。


添加刚刚配置的

重启网络服务

systemctl  restart  network

命令符访问

火狐浏览器访问

www.hello.com

www.nohello.com


注意事项

如果出现重启httpd服务报错时候(可能是你配置时候打错)

Job for httpd.service failed because the control process exited with error code.See "systemct status httpd.service"and "journalctl xe"for details


客户端如果访问失败

防火墙关闭

相关文章
|
4天前
|
安全 大数据 Linux
云上体验最佳的服务器操作系统 - Alibaba Cloud Linux | 飞天技术沙龙-CentOS 迁移替换专场
本次方案的主题是云上体验最佳的服务器操作系统 - Alibaba Cloud Linux ,从 Alibaba Cloud Linux 的产生背景、产品优势以及云上用户使用它享受的技术红利等方面详细进行了介绍。同时,通过国内某社交平台、某快递企业、某手机客户大数据业务 3 大案例,成功助力客户实现弹性扩容能力提升、性能提升、降本增效。 1. 背景介绍 2. 产品介绍 3. 案例分享
|
21天前
|
运维 监控 Linux
推荐几个不错的 Linux 服务器管理工具
推荐几个不错的 Linux 服务器管理工具
110 6
|
2月前
|
缓存 监控 Linux
Python 实时获取Linux服务器信息
Python 实时获取Linux服务器信息
|
2月前
|
网络协议 安全 文件存储
动态DNS(DDNS)技术在当前网络环境中日益重要,它允许使用动态IP地址的设备通过固定域名访问
动态DNS(DDNS)技术在当前网络环境中日益重要,它允许使用动态IP地址的设备通过固定域名访问,即使IP地址变化,也能通过DDNS服务保持连接。适用于家庭网络远程访问设备及企业临时或移动设备管理,提供便捷性和灵活性。示例代码展示了如何使用Python实现基本的DDNS更新。尽管存在服务可靠性和安全性挑战,DDNS仍极大提升了网络资源的利用效率。
117 6
W9
|
2月前
|
运维 关系型数据库 MySQL
轻松管理Linux服务器的5个优秀管理面板
Websoft9 应用管理平台,github 2k star 开源软件,既有200+的优秀开源软件商店,一键安装。又有可视化的Linux管理面板,文件、数据库、ssl证书方便快捷管理。
W9
157 1
|
2月前
|
缓存 Ubuntu Linux
Linux环境下测试服务器的DDR5内存性能
通过使用 `memtester`和 `sysbench`等工具,可以有效地测试Linux环境下服务器的DDR5内存性能。这些工具不仅可以评估内存的读写速度,还可以检测内存中的潜在问题,帮助确保系统的稳定性和性能。通过合理配置和使用这些工具,系统管理员可以深入了解服务器内存的性能状况,为系统优化提供数据支持。
67 4
|
2月前
|
NoSQL Linux PHP
如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤
本文介绍了如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤。接着,对比了两种常用的 PHP Redis 客户端扩展:PhpRedis 和 Predis,详细说明了它们的安装方法及优缺点。最后,提供了使用 PhpRedis 和 Predis 在 PHP 中连接 Redis 服务器及进行字符串、列表、集合和哈希等数据类型的基本操作示例。
94 4
|
2月前
|
运维 监控 安全
盘点Linux服务器运维管理面板
随着云计算和大数据技术的迅猛发展,Linux服务器在运维管理中扮演着越来越重要的角色。传统的Linux服务器管理方式已经无法满足现代企业的需求,因此,高效、安全、易用的运维管理面板应运而生。
|
2月前
|
运维 监控 Linux
服务器管理面板大盘点: 8款开源面板助你轻松管理Linux服务器
在数字化时代,服务器作为数据存储和计算的核心设备,其管理效率与安全性直接关系到业务的稳定性和可持续发展。随着技术的不断进步,开源社区涌现出众多服务器管理面板,这些工具以其强大的功能、灵活的配置和友好的用户界面,极大地简化了Linux服务器的管理工作。本文将详细介绍8款开源的服务器管理面板,包括Websoft9、宝塔、cPanel、1Panel等,旨在帮助运维人员更好地选择和使用这些工具,提升服务器管理效率。
|
2月前
|
安全 算法 Linux
Linux 服务器还有漏洞?建议使用 OpenVAS 日常检查!
在数字化时代,Linux 服务器的安全至关重要。OpenVAS 是一款优秀的开源漏洞扫描工具,可以帮助及时发现并修复服务器中的安全隐患。本文将介绍 OpenVAS 的主要功能、使用方法及应对漏洞的措施,帮助用户加强服务器安全管理,确保企业数字化安全。
91 7