启用 mod_http2 并在conf文件中设置协议后,HTTP/2配置未运行[重复]

2024-02-17

在看似正确的安装之后,HTTP/2 似乎并未运行。

我运行的是 CentOS 7。

我安装了最新版本的 Apache(版本 httpd-2.4.35-5.el7.x86_64),并一直在尝试让 HTTP/2 正常工作。

为此,我发现我们需要运行 http2_module。那是活跃的并且正在运行。我相信已经通过运行命令确认了这一点httpd -M。 http2_module(共享)列在这些模块下。

我知道要做的下一件事是添加Protocols h2 h2c http/1.1上面的<VirtualHost ...>标签。我也这样做过。

最后,我已经弯曲了我的 URL,并且仍然得到 HTTP/1.1。
卷曲命令:curl -vsko /dev/null --http2 https://www.thehomepainter.com

CURL 的简短回应:

获取/HTTP/1.1 主办方:www.thehomepainter.com 用户代理:curl/7.64.0 接受:/

部分来自 httpd.conf

Protocols h2 h2c http/1.1
<VirtualHost *:443>
    SSLEngine on
    ServerAdmin ### omitted ###
    ServerName thehomepainter.com
    ServerAlias www.thehomepainter.com
    DocumentRoot /var/www/html/
    Options -Indexes

    ProxyRequests off
    ProxyPreserveHost On
    AllowEncodedSlashes NoDecode

    ProxyPass "/" "http://localhost:3000/"
    ProxyPassReverse "/" "http://localhost:3000/"

    RequestHeader set X-Forwarded-Proto "https"
    RequestHeader set X-Forwarded-Port "443"

    Include /etc/letsencrypt/options-ssl-apache.conf
    SSLCertificateFile ### omitted ###
    SSLCertificateKeyFile ### omitted ###
    SSLCertificateChainFile ### omitted ###

    # i have tried this here as well
    # Protocols h2 h2c http/1.1
</VirtualHost>

Protocols h2 h2c http/1.1
<VirtualHost *:80>
    ServerAdmin [email protected] /cdn-cgi/l/email-protection
    ServerName thehomepainter.com
    ServerAlias www.thehomepainter.com
    DocumentRoot /var/www/html
    RewriteEngine on
    RewriteCond %{SERVER_NAME} =thehomepainter.com [OR]
    RewriteCond %{SERVER_NAME} =www.thehomepainter.com
    RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]

    # i have tried this here as well
    # Protocols h2 h2c http/1.1
</VirtualHost>

所以预期的结果是 HTTP/2 能够正常工作。然而事实并非如此,我也不知道为什么。


翻阅错误日志后,我终于找到了问题所在。

[http2:warn] [pid 7155] AH10034: The mpm module (prefork.c) is not supported by mod_http2. The mpm determines how things are processed in your server. HTTP/2 has more demands in this regard and the currently selected mpm will just not do. This is an advisory warning. Your server will continue to work, but the HTTP/2 protocol will be inactive.

为了解决这个问题,我编辑了 /etc/httpd/conf.modules.d/00-mpm.conf

注释掉这一行:LoadModule mpm_prefork_module modules/mod_mpm_prefork.so

并取消注释底线:LoadModule mpm_event_module modules/mod_mpm_event.so

重启apache然后就可以了。

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

启用 mod_http2 并在conf文件中设置协议后,HTTP/2配置未运行[重复] 的相关文章

  • htaccess 阻止访问 .php 并仅允许使用 RewriteRule

    我有一个带有这些重写规则的 htaccess 文件 RewriteEngine On RewriteRule login login php L RewriteRule index index php L RewriteRule page
  • php 的内容长度标头被覆盖!

    我试图弄清楚为什么 php 的 Content Length 标头被覆盖 这是演示 php 获取标头的请求 curl I http someserver com demo php HTTP 1 1 200 OK Date Tue 19 Ju
  • 使用 Apache2 的 NodeJS 应用程序有时会返回 503 服务器不可用

    风景 我有一个乌班图18 04DigitalOcean 中的服务器具有以下规格 1 vCPUs 1GB and 25GB磁盘 在这个服务器 我们称之为 API SERVER 中 我使用 PHP 和 NodeJS 在由 apache 管理的代
  • 托管多个 django 站点时出现问题(设置交叉)

    我最近设置了一个 Web 服务器 目前托管着几个静态页面网站和两个 django 项目 这两个 django 项目是 abc 和 xyz 分别位于主文件夹中的不同目录中 每个都有自己的 wsgi 脚本 该脚本指向各自的 settings p
  • PHP 空 $_POST

    我通过 HTTP POST 向 PHP 发送数据 这对于短于 8MB 8192KB 的数据来说效果很好 但是当发送的数据量更大时 PHP 会显示 POST变量为空 我强调的是 POST变量甚至不包含帖子字段的名称 它作为空数组存在 临界点似
  • 使用 JWT 缺少授权标头

    我正在尝试设置 JSON Web 令牌以从移动应用程序与我的 php 后端进行通信 我可以请求一个令牌就好了 当我需要验证它 或向另一个端点发出请求 时 我使用以下格式设置授权标头 Bearer
  • Apache服务器安装失败(端口80或443已在使用)

    我有一个与 PHP 相关的问题 我是 net 开发人员 我通常使用 asp net 和 c 我在笔记本电脑上安装了 Visual Studio 和 SQL Server 现在我尝试在我的系统上安装 Xampp 服务器 这里我遇到了一些问题
  • 如何调试 Apache mod_rewrite

    我对 mod rewrite 有两个主要问题 当我的规则无效时 不会报告任何有意义的错误 To reliably test each modification I have to erase Google Chrome s cache Th
  • Nginx vs Apache 用于高流量站点

    Would nginx作为高流量网站的网络服务器是否是更合适的选择 我们将建立的网站是一个电子商务网站 如果这有什么不同的话 无论哪种方式 从技术角度来看 我真的对实际的 原因 感兴趣 即 为什么会nginx从技术角度来看 对于此类网站来说
  • mod_fcgid + PHP + apache 锁定

    我正在运行一个相当典型的 LAMP 堆栈 其中 PHP 通过 mod fcgid 运行 考虑到服务器收到的流量 我认为服务器处于 高负载 状态 存在一个间歇性问题 当访问依赖 PHP 的站点时 Apache 报告所有连接都处于 正在发送内容
  • Apache httpd:根据其他*响应*标头有条件地设置响应标头

    有没有办法有条件地设置新的响应标头 其中条件使用另一个response标题 具体来说 仅当响应具有特定的 Content Type 时才应设置新的响应标头 我调查过模组头 http httpd apache org docs 2 2 mod
  • 提高 apache 日志的精度以包括毫秒

    我修改了配置rsyslogd禁用RSYSLOG TraditionalFileFormat 但仍然是apache日志 var log apache error log仅显示第二精度 还有什么需要配置的吗 At http httpd apac
  • Selinux 阻止来自 php 的 crontab 命令

    我们的服务器上有 Fedora 25 和 apache 我想要这样做 以便我们网站上的 php 脚本可以更改 crontab 设置 我创建了以下测试 php 脚本
  • 将子域重定向到新域

    大家好 尝试让 301 重定向正常工作但遇到了麻烦 我需要将 sub domain1 com 重定向到 www domain2 com 并确保所有文件名或参数都随之发送 这就是我正在尝试的 RewriteCond HTTP HOST dom
  • 在 Java Web 应用程序中处理 X-FORWARDED-PROTO 标头

    任何人都可以指导我与X 转发 原型 https developer mozilla org en US docs Web HTTP Headers X Forwarded Proto部署到 Apache Tomcat 的 Java Web
  • mod_mono 在新安装的 centos 上出现 EOF 错误

    我全新安装了 Centos 6 3 已完全更新 我已经从源安装了 mono xsp 和 mod mono 每个包都完美编译 它们都以 usr local mono 前缀安装 因此所有内容都位于 usr local mono 下 我已将 In
  • Apache:配置应用程序侦听器时出错

    当我尝试运行该应用程序时 我遇到了这个问题 警告 SetContextPropertiesRule Context 设置属性 源 到 org eclipse jst j2ee server CongressApp 没有找到匹配的 财产 20
  • 尝试访问我的网站时出现内部服务器错误

    我收到这个错误 内部服务器错误 服务器遇到内部错误或配置错误 无法完成您的请求 请联系服务器管理员 电子邮件受保护 cdn cgi l email protection和 告知他们错误发生的时间以及您可能会发生的任何事情 所做的事情可能导致
  • 在 CentOS 6.4 上的 apache 2.0 虚拟主机中创建子域

    我需要在网络服务器上创建子域阿帕奇2 0 CentOS 6 4 PageSpeed Apc 我没有 DNS 服务器 我需要使用虚拟主机 我的代码 NameVirtualHost xx xx xx xx
  • 在 Apache 服务器上运行 R Shiny 应用程序

    我有一个闪亮的应用程序 我想在现有的 Apache 服务器上运行 我对服务器完全陌生 不太知道从哪里开始 不幸的是 我在网上找到的大多数资源都是关于 NGINX 而不是 Apache 我知道这样的事情是可能的 但我不知道如何开始 如何开始在

随机推荐

  • ElasticSearch 6,具有动态索引映射的 copy_to

    也许我错过了一些简单的事情 但仍然无法弄清楚以下事情 从 ES 6 x 开始 all字段已弃用 建议使用copy to操作说明 https www elastic co guide en elasticsearch reference cu
  • 将 ipython 笔记本转换为 mediawiki

    我想将 ipython 笔记本转换为 mediawiki 标记 我有两个想法如何做到这一点 自定义导出nbconvert tool 先导出为LaTeX 然后使用pandoc将其转换为 mediawiki 标记 我在第一个选项中找不到任何内容
  • 在动态创建的类中实例化 spring bean

    我正在动态创建包含 spring bean 的类 但是这些 bean 没有被实例化或初始化 将它们保留为空 如何确保动态创建的类正确创建其所有 spring bean 这就是我动态创建类的方式 Class ctransform try ct
  • 官方 FTDI android 驱动程序 read() 不起作用

    我使用的是官方驱动程序http www ftdichip com Android htm http www ftdichip com Android htm 03 20 13 37 52 359 警告 FTDI 4453 读取开始 03 2
  • Golang解析HTML,提取带有标签的所有内容

    正如标题所述 我需要返回 html 文档的 body 标记中的所有内容 包括任何后续的 html 标记等 我很好奇知道解决此问题的最佳方法是什么 我有一个使用 Gokogiri 包的工作解决方案 但是我试图远离任何依赖于 C 库的包 有没有
  • Django 1.9 JSONField 更新行为

    我最近更新到 Django 1 9 并尝试更新一些模型字段以使用内置 JSONField 我正在使用 PostgreSQL 9 4 5 当我尝试创建和更新对象的字段时 我遇到了一些奇怪的事情 这是我的模型 class Activity mo
  • Rails 4 多域应用程序,为每个域设置了语言环境 i18n 语言环境

    在 Rails 4 多域应用程序中 我需要为每个域提供 4 种语言的一组区域设置文件 总共 3 个域 有些翻译在领域之间重叠 但其中一些非常具体 所以我正在考虑一种类似于这样的结构 config locales en yml fr yml
  • Android Studio 4.1 在 Mac 中卡在加载屏幕

    从昨天开始 我的 Android Studio 就一直停留在加载屏幕上 X X 我尝试过的 正在重新启动计算机 清除垃圾文件和日志 完全卸载然后重新安装Android Studio 遵循许多不同的解决方案 例如 其中之一是here http
  • 如何在 :before 伪类中设置 SVG 图像的大小?

    我想在 CSS 中显示图像 before元素 withimage before content url path to image svg display block height 20px width 20px 问题是 height an
  • 绘制词频和 NLTK

    我有一个包含各种单词的文件 我想计算文档中每个单词的频率并绘制它 但是 我的情节没有显示结果 这x axis必须包含单词 并且y axis频率 我在用NLTK NumPy and Matplotlib 这是我的代码 也许我做错了什么 def
  • 是否有直接指示 RESPONSE.REDIRECT 转到上一页?

    我有一个 Web 应用程序 服务台票证系统 带有一个收件箱来监视传入的请求 并制作了一些过滤按钮来帮助用户根据请求者姓名 创建日期等来安排请求 每个过滤器都会简单地调用同一页面 但会向查询字符串添加一些代码 例如 如果用户按下标有 Sort
  • 在 jinja2 循环中对 dict 的 dict 进行排序

    我如何对字典进行排序 my dict abc name B is sth True xyz name A is sth True by name在金贾 我试过了 for id data in my dict dictsort by valu
  • Python ImportError 没有名为 crypto.PublicKey.RSA 的模块

    当我尝试执行 python 程序时 我从终端得到这个 Traceback most recent call last File ring py line 1 in
  • 使用副本的 Microsoft.Web/sites/hostNameBindings 资源的 ARM 模板部署

    我对一系列 Azure 数据中心位置使用复制操作 以便为每个位置部署应用服务计划和网站 我能够创建流量管理器配置文件并使用复制对象将每个位置的端点添加到流量管理器配置文件中 当我尝试将每个网站的 CNAME 设置为我的自定义域名时 请按照说
  • 如何使用 don't cares 参数化 case 语句?

    我有一条称为输入的电线 我想检测前导的数量 我正在尝试创建一个模块 该模块使用下面的 case 语句根据前导零的数量更改输出数据 然而 输入的大小是可参数化的 如果 X 是固定值 4 我将创建一个 case 语句 case input 4
  • 客户端服务器端模板nodejs

    我正在使用 Node js 开发一个 Web 应用程序 我最初只想使用服务器端 hbs 模板 但后来我发现了客户端模板的主干 我发现它可以从服务器获取数据 然后使用 hbs 模板显示它 而不是服务器端生成整个 html 页面并发送 但后来我
  • 有没有比升级到 Visual Studio 2010 Ultimate 更便宜的负载测试方法

    我有 Visual Studio 2010 Professional 许可证 所以 Ultimate 还很遥远 我想要的只是进行几周左右的负载测试 有没有一种更便宜的方法来获得 VS2010 Ultimate 的负载测试部分 或者具有负载测
  • 存储库应该实现 UnitOfWork 吗?

    在 DDD 模式中 工作单元应该与存储库耦合吗 我见过几个不同的示例 包括实现工作单元接口的存储库 实现工作单元本身行为的存储库 以及具有表示工作单元的属性以便可以在各个工作单元之间共享的存储库 UoW 生命周期内有多个存储库实例 对于后者
  • MBProgressHud 与 gif 图像

    我可以使用 gif 图像代替默认加载指示器吗 到目前为止我正在使用这段代码但没有得到任何结果 谁能建议这段代码有什么问题吗 import UIImage GIF h void showLoadingHUD NSString title se
  • 启用 mod_http2 并在conf文件中设置协议后,HTTP/2配置未运行[重复]

    这个问题在这里已经有答案了 在看似正确的安装之后 HTTP 2 似乎并未运行 我运行的是 CentOS 7 我安装了最新版本的 Apache 版本 httpd 2 4 35 5 el7 x86 64 并一直在尝试让 HTTP 2 正常工作