我在我的Apache 2.2日志(使用标准的“组合”日志格式)中find以下几行: 92.240.68.152 – – [10/Feb/2013:20:47:38 +0000] "GET http://8stepschools.com/images/8stances_tiger.jpg HTTP/1.1" 301 – "-" "webcollage/1.135a" 94.75.247.144 – – [10/Feb/2013:11:09:35 +0000] "HEAD http://www.lenta.ru/info/ HTTP/1.1" 302 – "-" "Mozilla/5.0 ( Windows; U; Windows NT4.0; FireFox )" 我从来没有听说过这些网站。 我们当然不会链接或redirect到他们。 这些似乎不像远程客户端探测代理服务器 – 从我收集的代理服务器请求结束了200或404 这些请求是什么,为什么我的服务器redirect到他们?
我有什么和工作: 我正在使用Apache HTTPD 2.2进行代理请求。 我有多个ProxyPass映射: ProxyRequests On <Proxy *> AddDefaultCharset off Order deny,allow Allow from all </Proxy> ProxyPreserveHost Off ProxyPass /a http://some_ip/ ProxyPassReverse /a http://some_ip/ ProxyPass /b http://some_other_ip/ ProxyPassReverse /b http://some_other_ip/ … 这很好。 我想要的是: 我的一些请求需要更长的时间,所以他们超时给我一个代理错误 – 原因:从远程服务器读取错误 。 我想为所有请求设置timeout 。 我可以做到这一点,而不必添加timeout=… KeepAlive=On每个ProxyPass映射timeout=… KeepAlive=On ? 我目前有这样的东西: ProxyPass /a http://some_ip/ timeout=1200 KeepAlive=On ProxyPassReverse /a http://some_ip/ ProxyPass /b […]
的背景 我们在CF / Apache2后端服务器前运行一个Varnishcaching服务器。 清漆盒每两秒运行一次健康检查探针,如下所示: probe healthcheck { .url = "/probe.cfm"; .timeout = 5s; .interval = 2s; .window = 10; .threshold = 5; .initial = 5; .expected_response = 200; } backend web1 { .host = "<backend ip>"; .port = "80"; .probe = healthcheck; } probe.cfm这样做: <cfoutput> <!doctype html> <!–[if lt IE 7]> <html class="no-js ie6 […]
我在SF上查找了一些其他的问题,他们围绕8K的LimitRequestFieldSize和LimitRequestLine设置了最大限制。 httpd的文档确认了限制,但没有列出要修复的值。 我试图增加它,这是行不通的。 减less也没有工作。 我发现的每一个来源都只是表示有一个最大的限制。 为了检查一个头文件的长度,我发出这个命令: curl -v -H "CustomHeader: `printf '1%.0s' {1..n}`" hostname 我在RHEL 6.3虚拟机上安装了apache2,并为两个指令(在/etc/httpd/conf/httpd.conf指定)尝试了各种值。 作为参考,apache2的版本: Name : httpd Arch : x86_64 Version : 2.2.15 Release : 15.el6_2.1 现在问题是 : 我得到,我不能增加过去8K(似乎红帽人没有触及极限),但为什么我不能减less它? 无论指定什么值,如果n大于8K,apache将返回错误。
我需要使用Kerberos身份validation通过Active Directory进行Ruby on Rail应用程序集身份validation。 一些技术信息: 我正在使用Apache 安装了mod_auth_kerb 在httpd.conf中,我添加了LoadModule auth_kerb_module modules / mod_auth_kerb.so 在/etc/krb5.conf中添加了以下configuration [logging] default = FILE:/var/log/krb5libs.log kdc = FILE:/var/log/krb5kdc.log admin_server = FILE:/var/log/kadmind.log [libdefaults] default_realm = EU.ORG.COM dns_lookup_realm = false dns_lookup_kdc = false ticket_lifetime = 24h forwardable = yes [realms] EU.ORG.COM = { kdc = eudc05.eu.org.com:88 admin_server = eudc05.eu.org.com:749 default_domain = eu.org.com } [domain_realm] .eu.org.com […]
我pipe理一个内部的Apache2系统,使HTTP浏览和下载连接的文件系统。 我无法控制团队上传的内容的文件,文件types或文件名。 我可以在浏览器中呈现任何可能的东西。 文本,图像,XML等所有工作正常,因为我在httpd.conf的AddType指令中分配一个明确的MIMEtypes。 但是其中一些内容是以编程方式生成的,并没有我可以预测的扩展名,例如:file.name.text_1234。 这些文件总是文本/纯文本,但是我不能添加10k条目AddType .text_NNNN条目到http.conf或/etc/mime.types,而不能分配该内容types。 即使我这样做,我也许会遇到像.text_123456789或.text_abc123def456等扩展,所以明确的条目是不实际的。 有没有什么办法通过通配符或正则expression式分配AddType,甚至强制任何不是设置为内容types的文本/纯文本? 我已经尝试使用像DefaultType,ForceType,FilesMatch,文件和位置相关的指令全球覆盖或匹配一些条件,将分配此types,但没有任何工作。 我尽快补充: AddType text/plain .blabla_123456 ..然后some.file.name.blabla_123456呈现完美后,重新启动Apache。
我需要将所有请求redirect到一个维护页面,除了特定的URL,仍然可以让我有可能访问正常的网站。 我GOOGLE了,但我没有find任何东西。 现在我正在redirect: RewriteEngine on RewriteCond %{DOCUMENT_ROOT}/maintenance.html -f RewriteCond %{REQUEST_FILENAME} !/maintenance.html RewriteRule ^.*$ /maintenance.html [L] 通常(因为现在它被注释掉了)我使用jk_mod的Apache后面的Tomcat 6: <IfModule mod_jk.c> JkMount / worker1 JkMount /* worker1 </IfModule> 但是如何授予通过特定的URL访问正常的网站的可能性呢?
你好,对不起,如果这是一个重复,只是找不到答案…所以我自己的domainA.com和domainB.com(从Godaddy)。 我转发到我的静态IP。 Web服务器是Apache 2.2.23,本地IP为192.168.2.5。 我有2个虚拟主机: NameVirtualHost 192.168.2.5 <VirtualHost 192.168.2.5:80> DocumentRoot "C:/webroot/domainA" ServerName domainA.com ServerAlias www.domainA.com </VirtualHost> <VirtualHost 192.168.2.5:80> DocumentRoot "C:/webroot/domainB" ServerName domainB.com ServerAlias www.domainB.com </VirtualHost> 出于某种原因,如果我访问domainB.com,domainA.com接pipe。 我编辑了每个CNAME的www: domainA.com : www -> domainA.com domainB.com : www -> domainB.com 但我不太确定这部分….
(最初问到这里: https : //stackoverflow.com/questions/14977119/problems-installing-php5-from-source-in-ubuntu ) 我一直在尝试安装php5一段时间。 我在用着。 Ubuntu 12.10 Apache 2.4.3 而我想要安装的PHP版本是: PHP 5.4.11 我按照网页上的文档。 我安装了Apache(将文件中的apr和apr-util文件夹放在./scrlib文件中)。 sudo ./configure –enable-so sudo make sudo make install 所有这些命令都会输出很多信息,但只要我知道,就不会出现错误或警告。 只是为了logging: /usr/local/apache2/bin/httpd -l Compiled in modules: core.c mod_so.c http_core.c event.c mod_so.c在那里,所以我认为安装是没问题的。 现在,我尝试安装PHP(放置后 .sudo ./configure \ –prefix=/home/usr/local/php5/ \ –with-mysql \ –with-apxs2=/usr/local/apache2/bin/apxs \ –with-xsl \ –with-gdbm \ –with-gd \ –with-freetype=/usr/include/freetype2/ \ –with-zlib-dir=/usr/include […]
我在Apache上运行本地开发服务器。 我有一个脚本(用PHP编写)扫描我已经运行的所有本地开发站点,并告诉我哪些有未完成的项目提交给git。 当我以自己的用户git status运行git status ,git会忽略在.gitignore文件中设置的文件。 但是当我通过Apache / PHP运行命令时,这些文件不会被忽略。 我不确定我是不是很好解释,所以通过演示,我有一个三个文件夹: file1.txt file2.php file3.backup 我的gitignore包含这一行,忽略所有的备份文件: *.backup 当我手动运行git status命令时,我看到这个(备份文件被正确忽略): dave$ git status file1.txt file2.php 如果我运行exec('cd /dir/ && git status -s /dir/', $output); 从PHP,我看到: file1.txt file2.php file3.backup 备份文件显示为未版本控制的文件。 我不想在每个回购的基础上设置gitignore。 有什么办法可以让我的www数据用户使用gitignore? 或者,机器上的所有用户是否有更高级别的gitignore设置?