码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Web服务器实验案例


    目录

    关闭或放行防火墙和selinux

    1 搭建静态网站

    2 建立两个基于ip地址访问的网站

    思路:

    简单配置

    编写httpd额外文件

    3 建立两个基于不同端口访问的网站

    思路

    创建文件(与之前一致)

    额外文件配置

    4 基于虚拟目录和用户控制的web网站

    思路

    设置用户密码

    创建目录及页面

    编写配置文件

    额外配置文件(必须制定目录及虚拟主机)

    关闭或放行防火墙和selinux

    1 搭建静态网站

    [root@localhost ~]# echo "this is static" >> /var/www/html/index.html

    2 建立两个基于ip地址访问的网站

    要求:访问 ip 地址为 100 时,访问的是 100 网页
    访问 ip 地址为 200 时,访问 200 网页

    思路:

    创建 2 个 ip
    创建 2 个 ip 对应的目录
    使用 httpd 的额外文件来编写配置文件
    创建虚拟主机

    简单配置

    1. nmcli connection modify ens33 +ipv4.addresses 192.168.27.100/24
    2. nmcli connection modify ens33 +ipv4.addresses 192.168.27.200/24
    3. nmcli connection up ens33
    4. mkdir -pv /WWW/ip/100
    5. mkdir -pv /WWW/ip/200
    6. echo "this is 100" > /WWW/ip/100/index.html
    7. echo "this is 200" > /WWW/ip/200/index.html
    8. 配置httpd虚拟主机
    9. 虚拟主机样例文件是/usr/share/doc/httpd-2.4.6/httpd-vhosts.con
    10. [root@localhost ~]# find / -name "*vhosts.conf"
    11. /usr/share/doc/httpd-2.4.6/httpd-vhosts.conf

    编写httpd额外文件

    1. [root@localhost ~]# more /etc/httpd/conf.d/vhosts.conf
    2. <VirtualHost 192.168.27.100:80>
    3. DocumentRoot /WWW/ip/100
    4. ServerName 192.168.27.100
    5. </VirtualHost>
    6. <VirtualHost 192.168.27.200:80>
    7. DocumentRoot /WWW/ip/200
    8. ServerName 192.168.27.200
    9. </VirtualHost>
    10. 给目录给予访问权限
    11. <Directory "/WWW/ip">
    12. AllowOverride None
    13. Require all granted
    14. </Directory>

    3 建立两个基于不同端口访问的网站

    思路

    ip 已经创建
    创建两个不同端口的目录
    修改之前的额外文件

    创建文件(与之前一致)

    额外文件配置

    1. listen 81
    2. listen 82
    3. <VirtualHost 192.168.27.100:81>
    4. DocumentRoot /WWW/port/81
    5. ServerName 192.168.27.100
    6. </VirtualHost>
    7. <VirtualHost 192.168.27.100:82>
    8. DocumentRoot /WWW/port/82
    9. ServerName 192.168.27.100
    10. </VirtualHost>
    11. <Directory "/WWW/port">
    12. AllowOverride None
    13. Require all granted
    14. </Directory>

    4 基于虚拟目录和用户控制的web网站

    思路

    设置用户和密码
    创建页面文件目录
    编写配置文件

    设置用户密码

    1. htpasswd -c /etc/httpd/mymima xiaoming
    2. htpasswd -c /etc/httpd/mymima xiaohong

    创建目录及页面

    1. mkdir /usr/local/mysecret
    2. echo "this is mysecret" > /usr/local/mysecret/index.html

    编写配置文件

    额外配置文件(必须制定目录及虚拟主机)

    1. [root@localhost ~]# more /etc/httpd/conf.d/vhosts2.conf
    2. <Directory "/usr/local">
    3. AuthType Basic
    4. AuthName "please login"
    5. AuthUserFile /etc/httpd/mymima
    6. Require user xiaohong
    7. </Directory>
    8. <VirtualHost 192.168.27.100:80>
    9. DocumentRoot "/usr/local/mysecret"
    10. ServerName 192.168.27.100
    11. </VirtualHost>

  • 相关阅读:
    阿里P8大牛手写《分布式系统实战手册》Github一天星标就超78K
    C++面试八股文:什么是左值,什么是右值?
    基础算法(二)| 归并排序
    LeetCode 热题 C++ 85. 最大矩形
    Office登录一直转圈Win10怎么解决?
    硬件控制方法
    5. Makefile项目管理
    7.1 C++ STL 非变易查找算法
    每日一题----昂贵的婚礼
    回溯算法 | 组合 | leecode刷题笔记
  • 原文地址:https://blog.csdn.net/weixin_62173637/article/details/132038145
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号