非常详尽的 Linux 中 WEB服务器配置与管理 (通过例子来讲解)

2023-11-20

 Apache服务器的安装与启动
        检查是否已经安装了APACHE并启动它:(这是已安装好的状态)

[root@root ~]# rpm -qa | grep httpd
httpd-tools-2.2.15-53.el6.x86_64
httpd-2.2.15-53.el6.x86_64
[root@root ~]# service httpd start
正在启动 httpd:

 

    配置基于虚拟目录的虚拟主机
        新建二个目录:并在目录下各创建网页,编写网页内容

[root@root ~]# mkdir /var/www/test1
[root@root ~]# mkdir /var/www/exam1
[root@root ~]# cd /var/www/test1
[root@root test1]# vi one.html
[root@root test1]# cd
[root@root ~]# cd /var/www/exam1
[root@root exam1]# vi two.html

       修改配置文件

[root@root exam1]# vi /etc/httpd/conf/httpd.conf
在httpd.conf配置文件后添加:

Alias /test "/var/www/test"
<Directory "/var/www/test">
</Directory>

Alias /exam "/var/www/exam"
<Directory "/var/www/exam">
</Directory>

重启Apache:

service httpd resatrt,

之后访问http://服务器IP/test1
 

 

   配置基于端口的虚拟主机
        创建网页源文件:

[root@root ~]# mkdir /var/www/test
[root@root ~]# mkdir /var/www/exam

在目录下创建文件,并写入内容:

[root@root test1]# vi one.html
[root@root test]# cd
[root@root ~]# cd /var/www/exam
[root@root exam1]# vi two.html

配置文件:

/etc/httpd/conf/httpd.conf     

 找到 Listen 80  在它的下面添加:  

Listen 8080                                                                                                                                                                                       <VirtualHost *:80>
        DocumentRoot /var/www/test
</VirtualHost>
<VirtualHost *:8080>
        DocumentRoot /var/www/exam
</VirtualHost>

  重启

  查看端口是否冲突:cat /etc/services | grep 8081

    访问:http://服务器IP:80 http://服务器IP:8080
  

 配置基于IP的虚拟主机
        保留上面的目录及其内容
        设置多个ip地址
        配置:

/etc/httpd/conf/httpd.conf  
#Listen 8080 此行已不需要
<VirtualHost 192.168.41.29>
        DocumentRoot /var/www/test
</VirtualHost>
<VirtualHost 192.168.41.212>
        DocumentRoot /var/www/exam
</VirtualHost>

 重启并访问


    配置基于域名的虚拟主机


        使用hosts解析域名
            保留上述目录和文件内容,使用一个IP地址 

修改/etc/hosts将以下内容添加到文件末尾:IP www.test.com www.exam.com

 

修改配置文件httpd.conf,将以下内容添加到末尾:                          

  NameVirtualHost 192.168.41.29:80
<VirtualHost www.test.com:80>
        DocumentRoot /var/www/test
</VirtualHost>
<VirtualHost www.exam.com:80>
        DocumentRoot /var/www/exam
</VirtualHost>

            重启并访问网址


            Windows做客户端:

在配置文件C:\Windows\System32\drivers\etc\hosts末尾添加:
192.168.41.29    www.test.com    www.exam.com


        使用DNS解析域名
            保留上述目录和文件内容,使用一个IP地址
            

取消使用hosts解析域名,修改/etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6~                  

                                                           
            安装,启动与配置DNS

 在目录/var/named/chroot/etc下,修改named.conf:                              

 listen-on port 53 { any; };
  allow-query     { any; };

在目录/var/named/chroot/etc下,修改named.rfc1912.zones在末尾添加:

zone "test.com" IN {
        type master;
        file "test.com";
        allow-update { none; };
};
zone "exam.com" IN {
        type master;
        file "exam.com";
        allow-update { none; };
}; 

#空格使用tab键
 在目录/var/named/chroot/var/named下复制文件:

[root@root named]# cp -p named.localhost test.com
[root@root named]# cp -p named.localhost exam.com

            修改文件test.com和exam.com内容相同,如下:

$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      localhost.
www     IN      A       192.168.41.29             #这里的空格用tab键完成

重启dns, 检查dns是否配置成功:  (最好先用命令检查一遍,一共有3个命令,然后在重启dns ,血泪的教训,说多了都是泪

host -l exam.com

补充: 

检查文件/etc/httpd/conf/httpd.conf是否配置成功,末尾加以下内容
NameVirtualHost 192.168.41.29:80
<VirtualHost www.test.com:80>
        DocumentRoot /var/www/test
</VirtualHost>
<VirtualHost www.exam.com:80>
        DocumentRoot /var/www/exam
</VirtualHost>

            重启apache:service httpd restart;访问浏览器

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

非常详尽的 Linux 中 WEB服务器配置与管理 (通过例子来讲解) 的相关文章

  • 如何使用 xterm.js 创建基于 Web 的终端以 ssh 进入本地网络上的系统

    我偶然发现了这个很棒的图书馆xterm js https xtermjs org 这也是 Visual Studio Code 终端的基础 我有一个非常普遍的问题 我想通过基于网络的终端 不在网络中 可能位于 aws 服务器上 访问本地网络
  • 仅打印“docker-container ls -la”输出中的“Names”列

    发出时docker container ls la命令 输出如下所示 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES a67f0c2b1769 busybox tail f dev
  • 如何在 shell 脚本中并行运行多个实例以提高时间效率[重复]

    这个问题在这里已经有答案了 我正在使用 shell 脚本 它读取 16000 行的输入文件 运行该脚本需要8个多小时 我需要减少它 所以我将其划分为 8 个实例并读取数据 其中我使用 for 循环迭代 8 个文件 并在其中使用 while
  • Linux中的CONFIG_OF是什么?

    我看到它在很多地方被广泛使用 但不明白在什么场景下我需要使用它 What is 配置 OF OF 的全名是什么 打开固件 这是很久以前发明的 当时苹果公司正在生产基于 PowerPC CPU 的笔记本电脑 而 Sun Microsystem
  • 从 Python 调用 PARI/GP

    我想打电话PARI GP http pari math u bordeaux fr dochtml gpman html仅从Python计算函数nextprime n 对于不同的n是我定义的 不幸的是我无法得到帕里蟒蛇 http code
  • chown:不允许操作

    我有问题 我需要通过 php 脚本为系统中的不同用户设置文件所有者权限 所以我通过以下命令执行此操作 其中 1002 是系统的用户 ID file put contents filename content system chown 100
  • 在哪里可以找到并安装 pygame 的依赖项?

    我对 Linux 比较陌生 正在尝试安装 python 的 pygame 开发环境 当我运行 setup py 时 它说我需要安装以下依赖项 我找到并安装了其中之一 SDL 然而 其他人则更加难以捉摸 Hunting dependencie
  • 域套接字“sendto”遇到“errno 111,连接被拒绝”

    我正在使用域套接字从另一个进程获取值 就像 A 从 B 获取值一样 它可以运行几个月 但最近 A 向 B 发送消息时偶尔会失败 出现 errno 111 连接被拒绝 我检查了B域套接字绑定文件 它是存在的 我也在另一台机器上做了一些测试 效
  • 如何使用GDB修改内存内容?

    我知道我们可以使用几个命令来访问和读取内存 例如 print p x 但是如何更改任何特定位置的内存内容 在 GDB 中调试时 最简单的是设置程序变量 参见GDB 分配 http sourceware org gdb current onl
  • vector 超出范围后不清除内存

    我遇到了以下问题 我不确定我是否错了或者它是一个非常奇怪的错误 我填充了一个巨大的字符串数组 并希望在某个点将其清除 这是一个最小的例子 include
  • arm64和armhf有什么区别?

    Raspberry Pi Type 3 具有 64 位 CPU 但其架构不是arm64 but armhf 有什么区别arm64 and armhf armhf代表 arm hard float 是给定的名称Debian 端口 https
  • CentOS:无法安装 Chromium 浏览器

    我正在尝试在 centOS 6 i 中安装 chromium 以 root 用户身份运行以下命令 cd etc yum repos d wget http repos fedorapeople org repos spot chromium
  • NPTL 和 POSIX 线程有什么区别?

    NPTL 和 POSIX 线程之间的基本区别是什么 这两者是如何演变的 POSIX 线程 pthread 不是一个实现 它是几个函数的 API 规范 纸上的标准 英文 其名称以pthread 以及定义在
  • 如何在apache 2.4.6上安装apxs模块

    我刚刚用过apt get update我的 apache 已更新为2 4 6 我想安装 apxs 来编译模块 但收到此错误 The following packages have unmet dependencies apache2 pre
  • Linux:如何从特定端口发送TCP数据包?

    如何打开原始套接字以从特定 TCP 端口发送 我希望所有连接始终来自临时端口以下的一系列端口 如果您正在使用raw套接字 然后只需在数据包标头中填写正确的 TCP 源端口即可 相反 如果您使用 TCP 套接字接口 socket connec
  • jpegtran 优化而不更改文件名

    我需要优化一些图像 但不更改它们的名称 jpegtran copy none optimize image jpg gt image jpg 但是 这似乎创建了 0 的文件大小 当我对不同的文件名执行此操作时 大小仍然完全相同 怎么样 jp
  • Linux 中什么处理 ping?

    我想覆盖 更改 linux 处理 ping icmp echo 请求数据包的方式 这意味着我想运行自己的服务器来回复传入的 icmp 回显请求或其他 数据包 但为了使其正常工作 我想我需要禁用 Linux 的默认 ping icmp 数据包
  • SSE:跨页边界的未对齐加载和存储

    我在页面边界旁边执行未对齐加载或存储之前读过某处 例如使用 mm loadu si128 mm storeu si128内在函数 代码应首先检查整个向量 在本例中为 16 个字节 是否属于同一页 如果不属于同一页 则切换到非向量指令 我知道
  • 在我的 index.php 中加载 CSS 和 JS 等资源时出现错误 403

    我使用的是 Linux Elementary OS 并在 opt 中安装了 lampp My CSS and JS won t load When I inspect my page through browser The console
  • 如何通过ssh检查ubuntu服务器上是否存在php和apache

    如何通过ssh检查Ubuntu服务器上apache是 否安装了php和mysql 另外如果安装的话在哪个目录 如果安装了其他软件包 例如 lighttpd 那么它在哪里 确定程序是否已安装的另一种方法是使用which命令 它将显示您正在搜索

随机推荐

  • java 模拟库存管理系统

    本案例要求编写一个程序 模拟库存管理系统 该系统内容主要包括 商品入库 商品显示 和删除商品功能 此程序用手机举例 此管理系统分别为两个类Phone 和Test类 Phone类 确定四个变量 类 1 生成空参数构造方法 2 全部参数的构造方
  • 经典的期货量化交易策略大全(含源代码)

    1 双均线策略 期货 双均线策略是简单移动平均线策略的加强版 移动平均线目的是过滤掉时间序列中的高频扰动 保留有用的低频趋势 它以滞后性的代价获得了平滑性 比如 在一轮牛市行情后 只有当价格出现大幅度的回撤之后才会在移动平均线上有所体现 而
  • 引介

    转载自 https ethfans org posts rlp encode and decode RLP编码和解码 RLP Recursive Length Prefix 递归的长度前缀 是一种编码规则 可用于编码任意嵌套的二进制数组数据
  • sqli-labs第26~28关

    第26关 查看源码 黑名单 过滤了 or and 空格 s 代表正则表达式中的一个空白字符 可能是空格 制表符 其他空白 即 s 用于匹配空白字符 我们常见的绕过空格的就是多行注释 但这里过滤了 不太行啊 将空格 or and 等各种符号过
  • [设计模式]模板方法模式(Template Method)

    1 意图 定义一个操作中的算法的骨架 而将一些步骤延迟到子类中 TemplateMethod使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤 2 动机 其实就是如意图所描述的 算法的骨架是一样的 就是有些特殊步骤不一样 就可以
  • java一行代码实现RESTFul接口

    一 介绍spring data rest Spring Data REST是基于Spring Data的repository之上 可以把 repository 自动输出为REST资源 目前支持 Spring Data JPA Spring
  • vue3 vue-router 钩子函数

    全局路由守卫 vue router4 0中将next取消了 可写可不写 return false取消导航 undefined或者是return true验证导航通过 router beforeEach to from gt next是可选参
  • 大数据案例--电信日志分析系统

    目录 一 项目概述 1 概述 二 字段解释分析 1 数据字段 2 应用大类 3 应用小类 三 项目架构 四 数据收集清洗 1 数据收集 2 数据清洗 五 Sqoop使用 1 简介 2 Sqoop安装步骤 3 Sqoop的基本命令 六 数据导
  • 静态时序分析的三种分析模式(简述)

    经过跟行业前辈的探讨和参考一些书籍 本文中的 个人理解 部分有误 即 个人理解 在一个库中 尽管电路器件单元已经被综合映射 但是工具可以通过改变周围的环境来得到不同的单元延时 所以即使是同一个库 调用工艺参数不一样的情况下 其单元延时是不同
  • 黑客零基础入门方法有哪些?如何自学黑客技术?

    大家经常问我一个问题 黑客零基础入门方法有哪些 以及如何自学黑客技术 首先要说的是世界上大部分的网络黑客都是自学成才的 这与黑客这门技术有很大的原因 黑客是一个靠兴趣驱动的技术 大部分成为黑客的人一开始都是被黑客的酷炫身份所吸引从而成为黑客
  • PyTorch中nn.Module类简介

    torch nn Module类是所有神经网络模块 modules 的基类 它的实现在torch nn modules module py中 你的模型也应该继承这个类 主要重载 init forward和extra repr函数 Modul
  • 数理统计知识整理——回归分析与方差分析

    题记 时值我的北科研究生第一年下 选学 统计优化 课程 备考促学 成此笔记 以谨记 1 线性回归 1 1 原理分析 要研究最大积雪深度x与灌溉面积y之间的关系 测试得到近10年的数据如下表 使用线性回归的方法可以估计x与y之间的线性关系 线
  • 9.用python写网络爬虫,完结

    前言 这是python网络爬虫的最后一篇给大家做个总结 且看且珍惜把 截止到目前 前几章本书介绍的爬虫技术都应用于一个定制网站 这样可以帮助我们更加专注于学习特定技巧 而在本章中 我们将分析几个真实网站 来看看这些技巧是如何应用的 首先我们
  • 使用Gradle命令查看项目中库的依赖关系

    在Terminal中 可以通过 gradle 的命令查看项目中所使用库的版本 并且可以更加直观看到库之间的依赖关系 同时它们可以帮助您跟踪并解决与库版本冲突有关的任何问题 Building Android apps dependencies
  • P1719 Let‘s play a game!

    include
  • 海外SD-WAN服务商助力企业快速发展

    随着全球化的推进 越来越多的企业开始涉足海外市场 面临着跨国网络建设的挑战 在这个过程中 SD WAN Software Defined Wide Area Network 技术得到了广泛应用 SD WAN通过软件定义网络和云技术 可以实现
  • SQL太慢如何进行优化

    1 慢SQL优化思路 慢查询日志记录慢SQL explain分析SQL的执行计划 profile 分析执行耗时 Optimizer Trace分析详情 确定问题并采用相应的措施 1 1 慢查询日志记录慢SQL 如何定位慢SQL呢 我们可以通
  • 大数据工具软件安装失败问题是怎么解决的

    大数据所要安装的软件 python 可以在python的官网下载最新的python程序 pycharm 很好用的一款python编译工具 Anaconda3 集成了很多的大数据工具在里边 出现的问题 不能成功安装python 提示缺少win
  • python 随机生成不重复的6位数_随机生成6位数、随机生成不重复的6位数

    随机生成一个几位数 这种比较常见的操作今天我们来看一下 例如随机生成6位数 直接来简单明了的吧 int num int Math random 9 1 100000 最终num就是需要的6位随机数 同理要是想得到随机的五位数和七位数呢 随机
  • 非常详尽的 Linux 中 WEB服务器配置与管理 (通过例子来讲解)

    Apache服务器的安装与启动 检查是否已经安装了APACHE并启动它 这是已安装好的状态 root root rpm qa grep httpd httpd tools 2 2 15 53 el6 x86 64 httpd 2 2 15