余晖落尽暮晚霞,黄昏迟暮远山寻
本站
当前位置:网站首页 > 编程知识 > 正文

Linux下HTTP服务配置教程(java安装教程及环境配置方法)

xiyangw 2022-11-24 16:19 515 浏览 323 评论

HTTP SERVER

进程名:httpd

俗称:apache

Linux下HTTP服务配置教程(java安装教程及环境配置方法)

httpd的功能特性

路经别名:alias
用户认证:authentication
虚拟主机:virtual host
反向代理:负载均衡
用户站点:访问控制
默认网关接口--CGI:Comman Gateway Interface

安装httpd服务

查看当前主机是否安装有httpd

rpm -q httpd

当前没有则安装

yum -y install httpd

查看httpd配置文件

rpm -ql httpd
#1.服务脚本
/etc/rc.d/init.d/httpd
#2.服务配置脚本
/etc/sysconf/httpd
#3.运行目录
/etc/httpd
#4.主配置文件
/etc/httpd/httpd.conf
#5.扩展配置
/etc/httpd/conf.d/*.conf
#6.默认文档根目录(可修改)
/var/www/html
#7.CGI目录
/var/www/cgi-vin/

配置文件详解

面向三种区域的配置

全局配置 主机配置:用于仅提供一个站点 虚拟主机:用于提供多个站点

主机和虚拟主机不能同时存在

格式:指令 + 值

配置指令一般不区分字符大小写,但一般开头为大写,值有可能区分大小写,有些指令可以重复出现

常用配置指令介绍

1)监听套接字

#此指令可以出现多次,用于监听多个不同的套接字
Listen 80
Listen 172.16.36.207:8080

例:查看第二个8080端口是否起作用

#1.检测语法
httpd -t
#2.重新加载配置文件
service httpd reload
#3.查看端口是否被监听
ss -tnl
#4.浏览器测试
http://172.16.36.207:8080

2)持久连接

#1.开关
KeepAlive On / Off
#2.超时断开
KeepAliveTimeOut 15
#3.限制最大请求数,超过断开
MaxKeepAliveRequest 100

例:设置超时时间为5秒

#1.用telnet连接网站
telnet 172.16.36.207 80
#2.获取资源
GET /test.html http/1.1
Host:www.xiaoc.com
3.响应状态
connnection 连接状态不是马上关闭,还可以发送GET请求
5秒后自动关闭连接

3)MPM(multipath processing module)–多道处理模块

并不是指一个模块,而是对一种特性的称谓

类型

(1)prefork : 多个进程,每个进程对应一个请求(1对一)

(2)worker : 多个进程,每个进程有多个线程,每个线程对应一个请求(多对多)

(3)event : 单线程响应多个请求,一般只适合做测试使用

查看可使用模块

httpd -l

httpd服务默认启动的为prefork,修改服务配置脚本/etc/sysconfig/httpd,将HTTPD注释取消即可

#1.取消注释
HTTPD=/usr/sbin/httpd.worker
#2.重新启动服务
service httpd restart
#3.查看服务进程,已经是httpd.worker
ps -eFH | tail -5

模块内控制指令

Module 模块格式

指令 值

指令
MODULE_NAMEprefork.c
StartServers8默认启动工作进程数
MinSpareServers5最少空闲进程数
MaxSpareServers20最大空闲进程数
ServerLimit256最大活动进程数
MaxClients256并发请求最大数
MaxRequestsPerChild4000每个子进程在生命周期内所能服务的请求最大数

MODULE_NAME|worker||

StartServers | 4|默认启动的进程数

MaxClients |300|最大请求并发

MinSpareThreads |25|最小空闲线程数

MaxSpareThreads |75|最大空闲线程数

ThreadsPerChild |25|每个子进程可生成的线程数

MaxRequestsPerChild |0|每个子进程在生命周期内所能服务请求最大数,0表示不限定

4)DSO(Dynamic Shared Object)

Apache HTTP Server是一个模块化程序,管理员可以通过选择一组模块来选择要包含在服务器中的功能。模块将被编译为与主httpd 二进制文件分开存在的动态共享对象(DSO)。

用法格式:

LoadModule MODULE_NAME /path/to/module

重载配置文件就能生效

如果使用相对路径,则对于ServerRoot所定义的位置而言

列出已经装载的所有DSO模块

httpd -M

5)站点根目录

#默认值
DocumentRoot "/var/www/html"

设置该站点网页访问属性

Options Indexes FollowSymLinks
 AllowOverride None
 Order allow,deny
 Allow from all
Options
Indexes缺少指定的默认页面时,允许将目录中的所有文件已列表形式返回给用户:危险:慎用
FollowsymLinks允许跟随符号链接所指向的原始文件
None所有都不启用
All所有的都启用
ExecCGI允许使用mod_cgi模块执行CGI脚本
Includes允许使用mod_include模块实现服务器端包含(SSI)
IncludesNOEXEC允许包含但不允许执行脚本
MultiViews允许使用mod_negotiation实现内容协商
SymLinksIfOwnerMatch在链接

7)基于主机的访问控制

Options
 AllowOverride
 None 不禁用下面
 order 次序,写在后面的为默认
 allow,deny: 没有允许的都拒绝
 deny,allow:没有拒绝的都允许
 Allow from
 Deny from

8)定义默认的主页面

DirectoryIndex index.html index.html.var

9)用户目录

允许每个用户都能创建个人站点

#默认为禁止状态
UserDir disabled
#取消注释开启
UserDir public_html

例:创建test用户,创建其个人站点

useradd test
su - test
mkdir public_html
cd public_html
vim index.html
#其他人如test2能够访问我的网站
setfacl -m u:test2:x /home/test
#打开浏览器访问test个人站点
http://172.16.36.207/~test

10)配置日志功能

#配置日志显示格式
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
#配置日志文件
CustomLog logs/access_log combined
Options
%h远程主机名
%l远程登录名
%u认证时远程用户名
%t收到请求的时间
%r请求报文的起始行
%>s响应状态码
%b响应报文的长度,单位为字节
%{referer}i指定请求报文首部的内容
%{User_Agent}i用户代理,上一次跳转到本次页面的位置,“-”表示直接访问

11)路经别名

访问http://server_ip/icons时,其页面来自于/var/www/icons

Alias /icons/ "/var/www/icons/"Options Indexes MultiViews FollowSymLinks
 AllowOverride None
 Order allow,deny
 Allow from all

设定默认字符集

AddDefaultCharset UTF-8

相关推荐

前后端分离 Vue + NodeJS(Koa) + MongoDB实践

作者:前端藏经阁转发链接:https://www.yuque.com/xwifrr/gr8qaw/vr51p4写在前面闲来无事,试了一下Koa,第一次搞感觉还不错,这个项目比较基础但还是比较完整了,...

MongoDB 集群如何工作?

一、什么是“MongoDB”?“MongoDB”是一个开源文档数据库,也是领先的“NoSQL”数据库,分别用“C++”“编程语言”编写,使用带有“Schema”的各种类似JSON的文档,是也分别被认为...

三部搭建mongo,和mongo UI界面

三步搭建mongo,和mongoUI界面安装首先你需要先有一个docker的环境检查你的到docker版本docker--versionDockerversion18.03.1-ce,b...

Mongodb 高可用落地方案

此落地方案,用于实现高可用。复制集这里部署相关的复制集,用于实现MongoDB的高可用。介绍MongoDB复制集用于提供相关的数据副本,当发生硬件或者服务中断的时候,将会从副本中恢复数据,并进行自动...

一次线上事故,我顿悟了MongoDB的精髓

大家好,我是哪吒,最近项目在使用MongoDB作为图片和文档的存储数据库,为啥不直接存MySQL里,还要搭个MongoDB集群,麻不麻烦?让我们一起,一探究竟,继续学习MongoDB分片的理论与实践,...

IDEA中安装MongoDB插件-再也无要nosql manager for mongodb

大家都知道MongoDB数据库作为典型的非关系型数据库被广泛使用,但基于MongoDB的可视化管理工具-nosqlmanagerformongodb也被用的较多,但此软件收费,所以国内的破解一般...

数据库监控软件Lepus安装部署详解

Lepus安装部署一、软件介绍Lepus是一套开源的数据库监控平台,目前已经支持MySQL、Oracle、SQLServer、MongoDB、Redis等数据库的基本监控和告警(MySQL已经支持复...

YAPI:从0搭建API文档管理工具

背景最近在找一款API文档管理工具,之前有用过Swagger、APIManager、Confluence,现在用的还是Confluence。我个人一直不喜欢用Swagger,感觉“代码即文档”,让代...

Mac安装使用MongoDB

下载MongoDB包:https://www.mongodb.com/download-center解压mongodb包手动解压到/usr/local/mongodb文件夹配置Mac环境变量打开环境...

保证数据安全,不可不知道的MongoDB备份与恢复

大家在项目中如果使用MongoDB作为NOsql数据库进行存储,那一定涉及到数据的备份与恢复,下面给大家介绍下:MongoDB数据备份方法在MongoDB中我们使用mongodump命令来备...

MongoDB数据备份、还原脚本和定时任务脚本

备注:mongodump和mongorestore命令需要在MongoDB的安装目录bin下备份脚本备份格式/usr/local/mongodb/bin/mongodump -h ...

等保2.0测评:mongoDB数据库

一、MongoDB介绍MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和非关系数据库之间的产...

MongoDB入门实操《一》

什么是MongoDBMongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和非关系数据库之...

Python安装PyMongo的方法详细介绍

欢迎点击右上角关注小编,除了分享技术文章之外还有很多福利,私信学习资料可以领取包括不限于Python实战演练、PDF电子文档、面试集锦、学习资料等。前言本文主要给大家介绍的是关于安装PyMongo的...

第四篇:linux系统中mongodb的配置

建议使用普通用户进行以下操作。1、切换到普通用户odysee。2、准备mongodb安装包,自行去官网下载。3、解压安装包并重命名为mongodb4.04、配置mongodbcdmongod...

已有323位网友发表了看法:

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:24:16]  回复

    linux系统和window系统区别

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:24:33]  回复

    http服务默认的端口号是

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:24:38]  回复

    http服务的端口号配置英文

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:24:41]  回复

    配置cache是为了解决什么

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:24:42]  回复

    配置资源是最有效率的形式

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:24:42]  回复

    配置window update已完成100%,请勿关闭计算机

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:24:43]  回复

    配置高速缓冲存储器是为了解决什么问题

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:24:50]  回复

    配置波尔多液的化学方程式

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:24:51]  回复

    配置描述文件有风险吗

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:24:54]  回复

    配置高速缓冲存储器(cache)是为了解决

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:24:57]  回复

    配置砂浆时为什么除水泥外常常还有加入一定量的其他胶凝材料

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:24:59]  回复

    配置要求低的电脑游戏

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:25:00]  回复

    配置低好玩的电脑游戏

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:25:02]  回复

    配置资源是最有效的形式linux服务器

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:25:17]  回复

    linux服务器之间传输文件

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:25:21]  回复

    linux服务器如何配置dns114.114.114.114

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:25:23]  回复

    linux服务器重启命令安装httpcanary根证书

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:25:26]  回复

    安装httpcanary根证书下载环境下java安装及配置要求

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:25:27]  回复

    环境下java安装及配置命令

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:25:29]  回复

    java运行环境配置安装及运行

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:25:30]  回复

    java环境搭建及配置教程

  • vim下一页

    vim下一页  评论于 [2022-12-27 10:25:34]  回复

    域环境安装和配置java怎么读

取消回复欢迎 发表评论: