- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我用谷歌搜索并阅读了许多网站,包括 stackoverflow 上的大部分相关文章,但我不知道如何解决这个错误:
“从守护进程接收到的响应 header 被截断或超大”
此服务器出现故障:
此服务器运行相同的代码但没有截断问题:
不幸的是,我无法选择升级 Apache 或降级 mod_wsgi 来让它工作。我已经尝试更改 header 缓冲区大小,但它似乎没有做任何事情(仍然失败):
header-buffer-size=nnn Defines the maximum size that a response header/value can be that is returned from a WSGI application. The default size is 32768 bytes. This might need to be overridden where excessively large response headers are returned, such as in custom authentication challenge schemes which use the WWW-Authenticate header.
关于如何解决这个问题有什么想法吗?
Chrome 开发工具输出:
响应 header :
HTTP/1.1 500 Internal Server Error Date: Wed, 07 Jun 2017 11:49:58 GMT
Server: Apache/2.2.15 (Red Hat) Content-Length: 644 Connection: close
Content-Type: text/html; charset=iso-8859-1 Request Headers view
source
请求 header :
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Encoding:gzip, deflate, sdch, br
Accept-Language:en-US,en;q=0.8
Authorization:Basic 999999ZXQ0Myo=
Cache-Control:no-cache
Connection:keep-alive
Host:removed.the.url.for.security
Pragma:no-cache
Referer:https://removed.the.url.for.security/TeamStats/provstats/
Upgrade-Insecure-Requests:1
User-Agent:Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36
编辑的 wsgi_ssl.conf 文件:
#get warning, already loaded
#LoadModule ldap_module modules/mod_ldap.so
#LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
LoadModule ssl_module modules/mod_ssl.so
LoadModule wsgi_module modules/mod_wsgi.so
LoadModule php5_module modules/libphp5.so
WSGISocketPrefix /var/run/wsgi
SSLPassPhraseDialog builtin
SSLSessionCache shmcb:/var/cache/mod_ssl/scache(512000)
SSLSessionCacheTimeout 300
SSLMutex default
SSLRandomSeed startup file:/dev/urandom 256
SSLRandomSeed connect builtin
SSLCryptoDevice builtin
LDAPVerifyServerCert off
LDAPSharedCacheSize 500000
LDAPCacheEntries 1024
LDAPCacheTTL 600
LDAPOpCacheEntries 1024
LDAPOpCacheTTL 600
LDAPConnectionTimeout 5
Listen 443
<VirtualHost *:443>
TimeOut 120
ServerName server.name.address:443
ServerAdmin admin@address.com
SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
SetEnvIf User-Agent ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
SSLCertificateFile /etc/pki/tls/certs/cert.crt
SSLCertificateKeyFile /etc/pki/tls/private/cert.key
SSLCertificateChainFile /etc/pki/tls/certs/cert.pem
LogLevel error
CustomLog /var/log/access_log combined
ErrorLog /var/log/error_log
WSGIPassAuthorization On
WSGIApplicationGroup %{GLOBAL}
DocumentRoot /var/www/html/documents
<Directory /var/www/html/documents>
Order allow,deny
Allow from all
</Directory>
AddType text/html .php
DirectoryIndex index.html index.php
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
<Location />
Order allow,deny
Allow from all
AuthType Basic
AuthBasicProvider ldap
AuthName "test name"
AuthzLDAPAuthoritative on
AuthLDAPURL "ldaps://address and parameters here"
AuthLDAPBindDN "parameters here"
AuthUserFile /dev/null
AuthLDAPBindPassword password
AuthLDAPRemoteUserAttribute sAMAccountName
SSLRequireSSL
Satisfy any
#Require valid-user
</Location>
WSGIDaemonProcess test display-name=test threads=25 header-buffer-size=65536 inactivity-timeout=300
WSGIScriptAlias /test /var/www/html/wsgi-scripts/test.wsgi process-group=test
Alias /test/static /var/www/html/documents/test/static
<Location /test>
WSGIProcessGroup test
Require ldap-user "username"
Order deny,allow
Deny from all
</Location>
</VirtualHost>
LogLevel 设置为信息:
[Thu Jun 08 11:33:58 2017] [info] [client 0.0.0.0] mod_wsgi (pid=33568, process='test', application=''): Loading WSGI script '/var/www/html/wsgi-scripts/test.wsgi'.
[Thu Jun 08 11:34:07 2017] [error] [client 0.0.0.0] Truncated or oversized response headers received from daemon process 'test': /var/www/html/wsgi-scripts/test.wsgi, referer: https://url.address.net/test/
最佳答案
在我的例子中,我使用 aws EC2 和 eb 服务器,并且出现了相同的错误消息。仔细检查后发现这只是简单的内存错误。当我扩展我的实例时,问题就解决了。
来自 official page , 在 Elastic Beanstalk 控制台配置 EC2 实例:
我已经尝试过上面列出的方法来解决问题,在03_scipy.config 文件中添加以下代码并将其保存到.ebextension 目录中。但是,它不起作用。
container_commands:
AddGlobalWSGIGroupAccess:
command: "if ! grep -q 'WSGIApplicationGroup %{GLOBAL}' ../wsgi.conf ; then echo 'WSGIApplicationGroup %{GLOBAL}' >> ../wsgi.conf; fi;"
关于python - 如何解决: Truncated or oversized response headers received from daemon process,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44411633/
在前台程序上运行 valgrind 很容易。但是 valgrind 会为守护程序工作并在执行后给出输出。我该怎么做? 谢谢 最佳答案 是的,valgrind 肯定适用于守护程序。 许多守护进程都有某种
网络上有很多守护进程的示例实现。我看到的大多数不使用 daemon(3) 函数在后台运行程序。这只是品味、无知的问题,还是有充分的理由编写我自己的 daemonize 函数?使用 daemon(3)
我使用 apache commons 示例代码编写了一个守护进程: public class LockDaemon implements Daemon { @Override public void
docker出现cannot connect to the docker daemon. is the docker daemon running on this host错误解决办法 发生现象:
我正在使用 Ruby Daemon-kit 设置一个服务,为我的 Rails 应用程序执行各种后台操作。 当我在命令行上调用时它工作正常: ./bin/bgservice 我如何为它创建一个守护进程
当我尝试使用命令'react-native run-android'构建项目时,出现以下错误: 错误:无法找到或加载主类“Dorg.gradle.daemon = true” JS server al
我正在尝试从以下位置安装 memcached:http://blog.elijaa.org/index.php?post/2010/10/15/Memcached-for-Windows&simila
我使用 Xcode 创建了一个命令行工具应用程序。在那个应用程序中,我使用 NSWorkspace 来启动另一个应用程序包 (.app),如此处建议的那样。 MacOsX: How to launch
我正在尝试在一些Ubuntu 14.04流浪者盒子上使用consul设置docker swarm,但是docker守护程序存在问题。我已经在运行progrium / consul容器和swarm ma
我把android studio升级到3.2.0,并创建了默认项目。但是编译器报错: Android resource linking failed Output: D:\android1\proj
首先 - 我知道 UWSGI 建议使用 smart-attach-daemon 来自:http://uwsgi-docs.readthedocs.io/en/latest/AttachingDaemo
2018/09/27 我把android studio升级到3.2.0,并创建了默认项目。但是编译器报错: Android resource compilation failed Output: C
错误: Error 1 "bin\Debug\Daemon.exe.manifest;bin\Release\Daemon.exe.manifest" is an invalid value fo
尝试构建 Android 应用程序时出现此错误: > A failure occurred while executing com.android.build.gradle.internal.task
我已经从源码包安装了mysql-5.6.14 尝试开始: vaio1@vaio1-VPCEA3S1E:mysqld 2013-11-17 13:22:18 0 [Warning] Using uni
我知道一些(全部?)守护进程在启动时会 fork 。我的印象是,这是将子进程作为特权较低的用户运行,特别是如果守护进程类似于 HTTP 服务器。 为什么这是必要的?如果不 fork 子进程,进程就不能
我目前正在开发一个守护进程,它将执行很多不同的任务。它是多线程的,并且正在构建以处理几乎任何类型的内部错误而不会崩溃。好吧,我正在处理关闭请求,但我不确定我应该如何去做。 我有一个关闭 Hook 设置
Windows Server的Docker Windows Server 1709版,带有容器 Docker版本17.06.2-ee-6,构建e75fdb8 群集模式(工作程序节点,具有Ubuntu母
使用截至2017年8月25日的最新版本的Docker,我知道Docker不再需要VirtualBox安装程序以及boot2docker才能正常工作。但是,在尝试连接到它并使用docker-compos
是否使用 C 函数 daemon()与使用 fork()、setsid()、umask()、 等显式函数(除了无法设置所有守护进程参数之外)相比,Linux 守护进程在安全性或稳定性方面有任何劣势吗?
我是一名优秀的程序员,十分优秀!