Questions tagged «http»

HTTP代表超文本传输​​协议,是用于在万维网上传输信息的协议。

2
如何通过单个端口处理加密和未加密的HTTP连接
请看下图。 这应该如何工作? 当远程请求http:// myhost.com:8080/*时,应将请求转发到侦听回送接口端口8008的http服务器。这是简单的部分。 当远程用户请求http:// myhost.com:8080/specialurl ... 充当应用程序级别网关的程序应该能够将连接升级到加密的会话(无需更改端口) 与远程浏览器建立加密会话后,它应将请求转发到侦听回送接口端口8000的C程序。 我的问题是: 您是否曾经在生产环境中部署过这样的解决方案?如果你有... 您使用什么产品充当应用程序网关? 您能否提供一个配置示例? 硬限制: 我无法控制防火墙,并且我可以通过该端口将外部流量传入内部服务器的唯一端口是8080。该端口号无关紧要,问题是在防火墙级别只有一个开放的端口可以转发入站内部服务器的流量。 内部服务器必须正在运行Linux(当前正在运行Debian Lenny) 远程用户只需要使用当前的Web浏览器和Internet连接即可访问该服务器。这意味着此处不能通过SSH进行反向端口转发。 我需要一种已经在生产中经过测试并且可以轻松部署的产品。我不想开发自己的应用程序网关(如果是这种情况,我想我会在Stack Overflow上问这个问题,而不是在Server Fault上问这个问题)。 软限制: 我想避免将Apache用作应用程序网关(尽管如果这是唯一的选择,我愿意这样做) 如果可能,应用程序网关应该是成熟的开源软件产品。 到目前为止,产品已尝试作为应用程序网关(没有成功) Nginx的 lighttpd 磅 相关RFC RFC2817(... 说明了如何使用HTTP / 1.1中的升级机制通过现有的TCP连接来发起传输层安全性(TLS)。这允许不受保护的HTTP流量共享相同的知名端口。) RFC2818(... 描述了如何使用TLS来保护Internet上的HTTP连接。目前的做法是在SSL(TLS的前身)上对HTTP进行分层,通过使用不同的服务器端口来区分安全流量和不安全流量 ... )
10 linux  nginx  http  https  lighttpd 

4
我的DNS记录只能指向IP地址。如何到达港口?
我是网络管理的新手,因此很高兴能成功设置DNS记录。 现在,我有点困惑,因为我想要这个URL: http://www.example.org:8080/fetch/characters/ 实际达到这个目的 http://www.example.org/fetch/characters/ 因此,用户无需显式设置端口即可在端口8080上访问服务。 我怎样才能做到这一点?我的服务器上需要一些特殊的应用程序吗?还是将任何重定向的东西应用于请求?

3
服务器错误前如何从HTTPS重定向到HTTP?
我曾经使用SSL证书运营网站,但已停止使用SSL证书。问题在于该网站的大多数外部链接都使用https://前缀。 我尝试在.htaccess文件中使用https://重定向到http://: RewriteEngine On RewriteCond %{HTTPS} on RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI} 但是,正如在其他地方所指出的那样,服务器似乎在激活重定向之前试图检索证书。因此,在完成重定向之前会显示一个错误。该错误是警告证书已过期,或者是如果我删除证书签名请求,则错误是SSL收到的记录超过最大允许长度的错误。 有什么方法可以允许传入链接正确重定向?

5
有没有办法关闭特定网站的客户端浏览器缓存?
这是一个与浏览器无关的问题,但我们正在使用IE9进行测试。 我们的用户访问的其中一个Web应用正在被随机缓存,并且在适当的时候没有显示更改。没有其他站点出现此问题,并且我们与供应商合作,后者声称对其他任何人都没有发生。如果我们使用开发人员工具栏并选择“从服务器强制刷新”,则所有内容都会正确更新。 除了真正解决问题外,我们的想法是通过为此特定站点禁用缓存来解决此问题。但是,我们不知道如何。

3
通过端口8080/8443服务HTTP / HTTPS是否安全?
由于基础结构的限制,为世界提供HTTP服务的建议解决方案之一是通过端口8080和8443提供该服务。 我担心的是,某些用户可能无法访问这些服务,因为它们不在标准端口上运行,并且内容可能被(例如)作为公司网络策略的一部分进行了过滤。 那么...整个互联网上的用户可能无法访问这些服务的可能性有多大?

4
如何使用保持活动+ HTTP管道修复iOS 8中的图像交换问题?
自iOS8起,我管理的网站就遇到了一个间歇性问题,即图像与其他图像交换位置。许多地方都提到了这一点,但没有明显的解决方案: https://discussions.apple.com/thread/6574663 http://tech.vg.no/2011/12/14/safari-on-ios-5-randomly-switches-images/ http://tech.vg.no/2012/02/01/safari-on-ios-5-randomly-switches-images-part-3/ 它过去曾经是iOS5中的一个问题。我们的服务器正在通过管道和保持活动状态运行Lightspeed。我的服务器管理员已确认管道正在按要求的顺序返回资产。他提到禁用保持活动可能会解决该问题,但会大大增加服务器负载,这确实是一件坏事。 我所有的资产也正确地传递了内容长度。 我现在真的要解决这个问题。在我有这么多用户使用iOS的情况下,每个人对它的使用都感到无奈。 它始于iOS8的引入,它对Safari进行了相当重大的更改。在每个版本的8中,问题仍然存在。正如我所说,这是断断续续的,我们的用户开始责怪我们,因为“其他网站都没有问题”。 我想知道是否有人可以对此有所了解?其他人是否遇到过此问题和/或找到了解决方案? 这是我所关注网站的链接。

3
日志中的HTTP COOK请求方法是什么?
我在Apache日志中看到如下所示的条目 178.216.185.210 - - [24/Feb/2014:11:46:40 -0500] "COOK /freesearch.php?portal=0a9&... HTTP/1.0" 303 589 "-" "Mozilla/4.0 (compatible; Synapse)" 用COOK代替通常的GET或POST。 我尝试了各种搜索字词,但找不到任何可能的信息。我还搜索了用户代理字符串,发现它很可能是使用Ararat Synapse构建的脚本。从使用该用户代理字符串发出的其他请求来看,这是一个毫无用处的人。 那么这仅仅是一些组合的请求方法吗? Apache如何处理未知的请求方法?所有COOK请求的响应状态代码都记录为303。那么Apache是​​否说See Other并仅提供相同的URI?我看不到来自同一IP的其他点击,因此我假设响应只是被记录或忽略了。他们可能稍后会从另一个IP返回。 所以我的脚本永远不会运行,对吗?

2
达到可怕的256个最大连接数后的处理方法Apache Limit
在尝试弄清楚为什么即使服务器资源正常的情况下我的站点响应仍然这么慢之后,我终于检查了Apache的状态并发现: 78 requests/sec - 0.7 MB/second - 8.5 kB/request 256 requests currently being processed, 0 idle workers 看来我的apache在连接方面实在是太累了。任何试图访问我的网站的人都会被列入“等待名单”,直到Apache再次免费。 看来我有两个选择。 A)将最大连接限制提高到256以上。尽管根据本文所述,这并不容易: 默认情况下,MaxClients参数的编译硬限制为256。但是,可以通过重新编译Apache来更改此参数。一些发行版或托管公司将此限制提高到非常高的值,例如512甚至1024,以应付较大的负载。 B)找到占用太多时间的脚本。对我来说,这似乎更加棘手,因为大多数apache进程只是出现然后又消失。另外,我的站点的PHP脚本已进行了很好的优化……并且再次,服务器资源很好: Server load 2.69 (8 CPUs) Memory Used 25.33% (2,039,108 of 8,048,804) Swap Used 1.32% (54,156 of 4,095,992) 我应该选择哪个选项(如果有),应该怎么做? 编辑 详细信息:服务器版本:Apache / 2.2.23(Unix)mod_ssl / 2.2.23 OpenSSL / 1.0.0-fips DAV …
9 apache-2.2  php  http  lamp 

2
Apache:将不安全的请求发送到安全端口…要重定向
前言 首先:一个简单的端口80->端口443重写将无法解决此问题。在几乎之前的每个问题(邮件主题,论坛主题等)中,我发现这是第一个无知的响应,并且被多次模仿。 其次:是的,我知道您不能在同一端口上提供HTTP和HTTPS通信。 不是那样的 场景: Apache Server通过端口乘法托管多个站点。80端口是一个公共站点。端口443提供该站点的安全版本。 端口7443、8443和9443分别服务于单独的SSL安全站点。 如果用户输入了错误的URL,或者给出了无效的链接,请说出http://hostname.tld:7443,并为他们提供以下荒谬页面: 代替服务器,只需将它们重定向到https://hostname.tld:7443。 我的问题是,如何以Zeus的屁眼的名义修改Apache的行为或此错误消息以自动重定向用户? 即使为HTTPS配置了Apache,Apache显然仍在处理非https请求(以显示该错误消息)。对我而言,不仅默认情况下进行重定向似乎非常愚蠢,而且即使我不同意我的理解,我仍然可以理解为什么他们采用了他们的行为。所以我的问题是:您可以更改它吗?他们正在处理错误SOMEWHERE,并且将Apache作为配置的聚宝盆,这可以说是在某处处理该行为的指令,但到目前为止,我在进行了几个小时的修补后仍无法找到它。 更新: 我尝试了多种方法,包括: 使用ErrorDocument 400指令来获取仅发送Status 301和Location标头的CGI和PHP脚本。这将导致空白页。ErrorDocument 400 https://hostname.tld:7443简单地使用将导致该链接显示在页面上。 几乎mod_rewrite可以使用I或Google的所有组合,包括完全指导该网站的全面声明;这些永远都行不通。从字面上看,他们什么都不做。我猜想Apache甚至在尝试处理重写指令之前都会出现上述错误。 由于自定义端口的使用,我无法使用基于端口的重定向。我无法使用基于脚本的重定向,因为由于http / https不匹配,它们无法得到服务。我几乎愿意将其归结为错误或意外行为,但是有人预见到了要在其中放置非常自定义的错误消息的想法,他们没有理会您可能只是想将其发送到他们已经提供了 URL ?

1
为什么Django的开发服务器默认使用端口8000?
(我的问题不是真的关于Django。它是关于其他http端口的。我只是偶然知道Django是一个相对著名的应用程序,默认情况下使用8000,因此是说明性的。) 我有一个狂野的开发服务器,有时我们需要在不同的端口上运行多个httpd服务。当我需要站起来进行第三项服务时,我们已经在使用端口80和8080,我发现我们的安全团队已锁定了来自Internet的端口8000访问。我知道端口80是标准的http端口,而8080通常是http_alt,但我也想让我们的安全团队也可以打开8000。为了解决这个问题,我希望这个问题的答案可以为我提供一个合理的论据,以便在某些情况下使用端口8000超过8080。 还是只是一个毫无意义的随机选择?
9 security  http  port 


1
混合使用Subversion“ SVNParentPath”和每个存储库配置?
给定使用SVNParentPath的典型Subversion / Apache配置,存储库托管/svn/如下: <Location /svn> DAV svn SVNParentPath /srv/source/svn/repos SVNReposName "Subversion Repository" AuthzSVNAccessFile /srv/source/svn/authz Satisfy Any AuthType Basic AuthBasicProvider file AuthName "Subversion Repository" AuthUserFile /srv/source/svn/htpasswd Require valid-user </Location> 有没有一种方法可以覆盖特定存储库的此配置,而不必将其托管在其他路径上?也就是说,有什么办法可以添加这样的Location块... <Location /svn/my_special_repo> SVNPath /srv/source/svn/repos/my_special_repo AuthzSVNAccessFile /srv/source/svn/repos/my_special_repo/conf/authz </Location> ...是否覆盖了Location块中提供的配置 /svn?我使用上述配置进行此操作的尝试已经在Apache错误日志中遇到了奇怪而无用的错误,例如: [Wed Feb 02 11:28:35 2011] [error] [client 10.10.209.120] (20014)Internal error: Can't open …


5
带SSD缓存存储的Squid或其他HTTP缓存?
我正在考虑在具有SSD驱动器的系统上设置一个鱿鱼(或可能的清漆)缓存。 明显的好处是这些系统具有很高的读取速度,我希望我的命中率会很高。 假设我可以将7个SSD放入RAID配置。(有些情况会让我收拾更多东西) 实施问题: 我应该使用RAID0吗?(我预计驱动器最终会出现故障,因此这似乎很危险。) 我应该使用RAID10吗?(这使我的磁盘空间减少了一半,这是昂贵的。) 我应该使用RAID5吗?(众所周知,SSD具有“不良”的写入性能和写入限制,并且所有额外的奇偶校验写入都可能会大大降低此速度。) 我应该只将每个磁盘视为自己的鱿鱼数据存储区吗?(squid处理多个数据存储的性能如何?如果/当一个失败时会发生什么?) 我应该忽略数据存储,而只是将SSD放入大型SWAP分区中,然后让Linux VM做到这一点吗?(似乎草率) 在生产环境中使用SSD的人们的任何建议将不胜感激。(特别是如果您将它们用于HTTP缓存)
9 raid  http  squid  cache  ssd 

1
Chrome在下载MP4视频(〜34MB)时发出太多请求(〜22000)
我们在我们的网站上托管了一些视频文件(mp4)。 在谷歌浏览器中,所有文件的加载速度都太慢,在FF中一切正常。 我测试了下载大小为34MB的文件(我通过直接链接打开了文件)。结果是: Chrome发出了约22000(!)请求,传输了982MB。 Firefox仅发出了5个请求。 作为服务器,我们使用默认设置(与提供视频文件有关)的nginx。 在这里,交互(前五个请求)使Chrome和服务器之间相互交流。只有Range,Content-Length,Content-Range标题包括在内。 (<-Chrome发送的标头,<-服务器发送的标头): > Initial request for file, usual GET < Content-Length:35690389 < Content-Type:video/mp4 Then a bunch of similar requests, on which the server responded with 206 status code: --- > Range:bytes=0- < Content-Length:35690389 < Content-Range:bytes 0-35690388/35690389 --- > Range:bytes=29100305- < Content-Length:6590084 < Content-Range:bytes 29100305-35690388/35690389 …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.