当前位置: 首页 > news >正文

linux之HTTP服务

1.基本的配置

   httpd:俗称Apache (A pachey Server)

  /etc/httpd/conf/httpd.conf            #配置文件

  /etc/httpd/conf.d/*       #配置文件的片段,这个目录中所有以.conf结尾的文件都被融合进来了

  /var/www/html            #页面文件的存放目录.->DocRoot:文档根目录

2、启动服务

  service httpd start

原因:反向解析的结果不是主机名

解决办法:修改配置文件vim /etc/httpd/conf/httpd.conf

ServerName 192.168.100.10:80

1).怎么打开虚拟机中的页面?

浏览器中直接的输入http://192.168.100.10/

说明:因为默认的情况下是http服务,所以可以直接的输入192.168.100.10

2)文件的默认的上传目录

/var/www/html  文件上传的目录

3)怎么默认显示自己上传的html

mv li.html index.html

说明:1 因为http默认显示的是  index.html

       2 这个不需要重启服务,直接的刷新页面就行了

 3.怎么样不看到欢迎界面

1)切换到 cd /etc/httpd/conf.d

2)将欢迎的文件的扩展名修改

mv welcome.conf welcome.conf.bak  --修改welcome.conf的扩展名之后,重启服务

3)重新加载配置文件  service httpd reload

4)刷新页面之后,检查登录.

说明:看到的是目录/var/www/html下的文件列表

 4、配置文件

 /etc/httpd/conf/httpd.conf

配置参数值

配置参数不区分字符大小写:set ic

值有可能区分大小写,某些路径是需要区分大小写的

例如:  Listen [IP:]80  

IP是可以省略的,会监听本机上所有IP的80端口

/var/www/html  ---http的文档根目录.

  5、配置文件测试

第一种方法:service httpd configtest

第二种方法:httpd –t

  6、httpd服务8大特性

 vim /etc/httpd/conf/httpd.conf

1)监听套接字

Listen [IP:]port

此指令可以出现多次,用于指定监听多个不同的套接字

Listen 80              ---监控所有机器上的80端口

Listen 192.168.200.10:88    --监控192.168.200.10上的88端口

Listen 192.168.100.10:80    --监控192.168.100.10上的80端口

验证下是是否开启了多个端口的命令

Netstat –tunpl|grep httpd

注意点:想要同时的监控两个ip段,需要在主机的net1的网段中增加200的网段,不要ip设置冲突了。先保证在windows中ping可以ping通

2)配置使用Keepalive机制

KeepAlive {On|Off}

KeepAliveTimeout 2 超时时间

MaxKeepAliveRequests 50 最大请求个数

说明:这个数据的设置需要依据实际情况调整并测试性能

目的:是为了多传输几个文件

http默认的是tcp协议  3次握手 4次断开

 

3)配置站点根目录

DocumentRoot "/var/www/html"  //这个目录中的文件并非就能够正常被访问

通常站点根目录下面的网页文件,还要定义它们的访问属性,

因此与之配合的容器就是     ---这点需要修改

定义关于根目录的访问权限,就要使用Directory 了

 

说明:①DocumentRoot "/tmp/html"

      ② DocumentRoot需要和后面的Directory是一对的

# This should be changed to whatever you set DocumentRoot to.

 

 ③目录的结尾只能是”tmp/html”.如果换成”/tmp/test”,需要在这个目录中有index.html的文件。这个实验测试了两遍,是有不同的结果。暂且记录下来

 

4)页面访问属性

 

Options                  选项,来定义访问方式的

Indexes-->缺少指定的默认页面时,允许将目录中的所有文件以列表形式返回给用户:危险:慎用

FollowsymLinks-->允许跟随符号链接所指向的原始文件 ,危险

None                    所有都不启用

All                     所有的都启用

SymLinksIfOwnerMatch    在链接文件属主属组与原始文件的属主属组相同时,允许跟随符号连接所指向的原始文件

AllowOverride      ---是否禁用IP访问控制

 

 

5)基于主机的IP访问控制

 

     Options

     AllowOverride

     //表示底下的这种基于IP的访问控制机制是否被禁用,

     None 不禁用下面

     order+次序,写在后面的为默认法则

        allow,deny: 没有允许的都拒绝

        deny,allow:没有拒绝的都允许

        Allow from  192.168.100.0/24  ---这是允许的,白名单

        Deny from     --这是不允许的相当于黑名单

 

 

6)定义默认主页面

DirectoryIndex 依次查找

DirectoryIndex index.html index.html.var

7)用户目录

如果期望让每个用户都可以创建个人站点:http://Server_IP/~Username/

userdir disabled:禁止用户使用个人站点

userdir dir_name:  dir_name是用户家目录下的目录名称,所有位于此目录中的文件均可通过前述的访问路径进行访问

用户的家目录得赋予进行httpd进程的用户(通常是apache)拥有执行权限

       setfacl -m u:apache:x 用户家目录

8)路径别名

Alias "/hahaha" "/tmp/test"

意味着访问http://Server_IP/hahaha时,其页面文件来自于/tmp/test目录中

这里有一个权限的问题,需要更改配置文件

8)路径别名

Alias "/hahaha" "/tmp/test"

意味着访问http://Server_IP/hahaha时,其页面文件来自于/tmp/test目录中

这里有一个权限的问题,需要更改配置文件

保存退出,然后reload

然后写入内容  this is  games

保存退出,reload

然后就在浏览器上出现内容了。就不会出现forbidden

 

转载于:https://www.cnblogs.com/lbg-database/p/10109948.html

相关文章:

  • 【原】戏说Java
  • WPF 获取鼠标屏幕位置、窗口位置、控件位置
  • 使用ABAP正则表达式解析HTML标签
  • 计算机英语学习笔记(六)
  • java多线程和长连接,三方转换通信的实践(1)——转换端程序
  • 【呆鸟译Py】这位老师的70个问题,100个数据分析师都想不全
  • 用Gmail做QQ邮件群发的一种方式
  • 机器人操作系统来到Windows
  • sublime text3
  • Spring Cloud 之 Consul 与 Consul 服务剔除
  • 阿里中间件开源组件:Sentinel 0.2.0正式发布
  • 在ABAP里取得一个数据库表记录数的两种方法
  • 【Unity Shader】Shader基础
  • vue项目使用微信公众号支付
  • 你连这10个工具都不知道,还是程序员?
  • 【刷算法】从上往下打印二叉树
  • chrome扩展demo1-小时钟
  • JAVA并发编程--1.基础概念
  • jquery ajax学习笔记
  • rabbitmq延迟消息示例
  • seaborn 安装成功 + ImportError: DLL load failed: 找不到指定的模块 问题解决
  • vue自定义指令实现v-tap插件
  • Zepto.js源码学习之二
  • 持续集成与持续部署宝典Part 2:创建持续集成流水线
  • 从零开始学习部署
  • 和 || 运算
  • 如何利用MongoDB打造TOP榜小程序
  • 一些css基础学习笔记
  • 在Mac OS X上安装 Ruby运行环境
  • 《天龙八部3D》Unity技术方案揭秘
  • Spring Batch JSON 支持
  • ​​​​​​​ubuntu16.04 fastreid训练过程
  • ​人工智能书单(数学基础篇)
  • #100天计划# 2013年9月29日
  • #LLM入门|Prompt#2.3_对查询任务进行分类|意图分析_Classification
  • #控制台大学课堂点名问题_课堂随机点名
  • $(document).ready(function(){}), $().ready(function(){})和$(function(){})三者区别
  • %3cli%3e连接html页面,html+canvas实现屏幕截取
  • (13)[Xamarin.Android] 不同分辨率下的图片使用概论
  • (C语言)求出1,2,5三个数不同个数组合为100的组合个数
  • (Note)C++中的继承方式
  • (Redis使用系列) Springboot 实现Redis消息的订阅与分布 四
  • (搬运以学习)flask 上下文的实现
  • (二)Eureka服务搭建,服务注册,服务发现
  • (二)PySpark3:SparkSQL编程
  • (附源码)springboot宠物医疗服务网站 毕业设计688413
  • (附源码)springboot学生选课系统 毕业设计 612555
  • (收藏)Git和Repo扫盲——如何取得Android源代码
  • (未解决)macOS matplotlib 中文是方框
  • (一)基于IDEA的JAVA基础10
  • (转)C语言家族扩展收藏 (转)C语言家族扩展
  • (转)程序员技术练级攻略
  • **PHP二维数组遍历时同时赋值
  • *2 echo、printf、mkdir命令的应用
  • .bat批处理(五):遍历指定目录下资源文件并更新