Request-URI Too Large :: IBM HTTP Server - url

We are using IBM HTTP Server Version 7.0
I am getting following error message on webpage
Request-URI Too Large
The requested URL's length exceeds the capacity limit for this server
IBM_HTTP_Server at WIN2K862 Port 80
LimitRequestLine is useful?
What changes I need to do to resolve this issue?

LimitRequestLine clearly needs to be increased.

Related

what's the string length limit of jenkins string parameter

Now I create a jenkins job with string parameter, and this parameter is come from the upstream job.
I just want to know is there any limit about the length of the string parameter, because this info is get from upstream job and it cloud be a very long string
I believe noone really provides an answer since there is no reason to limit the underlying technology. So let's look at that:
Java
Java itself seems quite capable of running big strings, but how big is big actually? There is a quite good response in How many characters can a Java String have?
Jetty/Webserver
Jenkins is a web application, and as such runs with the embedded jetty or requires to be deployed on some JEE Servlet Container. They, similar as Java do not apply specific limitiations.
HTTP Protocol
Regardless of whether you run Jenkins through HTTP or HTTPS, that technology does not limit request or parameter size per specification. On the other hand and mostly for availability and security reasons limits are configured. Depending on the servlet container you use check that configuration. One reason to limit those sizes is to mitigate Slowloris attacks.
Client Browser
A lot of browsers have configured limits such as Maximum length of HTTP GET request.
It may seem the strictest limitations come from browser implementations, although I believe as a person responsible for Jenkins operations you want to limit HTTP request and parameter size on the server side. An example of how to do it is in Configure max post size for a external webapp in jetty

Does pinging a website increase number of hits?

I recently found the ping command on the mac. I used to it casually ping my rails heroku app. I was wondering if this type of ping, from the terminal, increases the total number of hits the website gets (obviously not unique hits).
ping is a network command not using the port 80 or http protocol.
So there's no way it can count towards a rails application hit.
More info :
http://wiki.answers.com/Q/Which_port_is_used_by_Ping_command
The ping command only pings the host, it is a network tool to check connectivity between machines, it is a different protocol from HTTP, please read this, it may help you understand a bit better what is ping http://en.wikipedia.org/wiki/Ping_%28networking_utility%29 and what is his uses.
Cheers
What Anthony said above is true. Ping uses ICMP which is lower in the stack than an http request going over port 80. Ping only sends a single packet, expecting a single packet in response which is rather small (I think 64bytes round trip).
This can however generate load on the box running your server. So be wary of excess use as you could inadvertently cause a denial of service :)

how to set the max length of webservice parameter

the system's configuration is:
web server: WEBrick
software enviroment: ruby on rails
when the browser passes more than 400 bytes parameters to the server, the server returns 414 code(Request-URI Too Large).
How to solve this problem?
Ryan Bates answered your question here: https://github.com/intridea/omniauth/issues/43
In short: use mongrel in development.
A few useful details:
The URI limits vary given client, server and even browser.
Browsers
IE has a limit around 2kb, firefox 65kb. Since Api are triggered from servers it's not that annoying.
Servers
Nginx's default limit is 4kb for 32bits and 8kb for 64bits.
Apache's default is 8190 bytes.
Both can be changed inside config.
Source: the excellent 'Service Oriented Design with RoR'

invalid content-Length ERROR while uploading 2 GB of stream

When Trying to upload 2GB of stream i got invalid content length error
am running Apache as frontend server to mongrel and chrome as my browser.
One more thing one i do it with mongrel alone am able to upload this 2 GB of stream ,cud anybody tell me whats the problem and how do i configure content length in apache??
I'd imagine the problem is that Apache considers it a denial of service attempt and has a cap to prevent you locking up all the server's resources (very reasonable), whether that's configurable or not I'm not sure - can't find anything but will keep hunting. If it's not, you can always build your own copy of Apache with the limit removed.
Have you considered sending the data in reasonable-sized chunks?
You might also wish to inspect the outgoing request using packet inspection or browser debugging tools. It's possible the content-length is being malformed by the browser (I doubt they have a 2GB test case...)

Erlang's maximum number of simultaneous open ports?

Does the erlang TCP/IP library have some limitations? I've done some searching but can't find any definitive answers.
I have set the ERL_MAX_PORTS environment variable to 12000 and configured Yaws to use unlimited connections.
I've written a simple client application that connects to an appmod I've written for Yaws and am testing the number of simultaneous connections by launch X number of clients all at the same time.
I find that when I get to about 100 clients, the Yaws server stops accepting more TCP connections and the client errors out with
Error in process with exit value: {{badmatch,{error,socket_closed_remotely}}
I know there must be a limit to the number of open simultaneous connections, but 100 seems really low. I've looked through all the yaws documentation and have removed any limit on connections.
This is on a 2.16Ghz Intel Core 2 Duo iMac running Snow Leopard.
A quick test on a Vista Machine shows that I get the same problems at about 300 connections.
Is my test unreasonable? I.e. is it silly to open 100+ connections simultaneously to test Yaws' concurrency?
Thanks.
It seems you hit a system limitation, try to increase the max number of open files using
$ ulimit -n 500
Python on Snow Leopard, how to open >255 sockets?
Erlang itself has a limit of 1024:
From http://www.erlang.org/doc/man/erlang.html
The maximum number of ports that can be open at the same time is 1024 by default, but can be configured by the environment variable ERL_MAX_PORTS.
EDIT:
The system call listen()
has a parameter backlog which determines how many requests can be queued, please check whether a delay between requests to establish connections helps. This could be your problem.
All Erlang system limits are reported in the Erlang Efficiency Guide:
http://erlang.org/doc/efficiency_guide/advanced.html#id2265856
Reading from the open ports section:
The maximum number of simultaneously
open Erlang ports is by default 1024.
This limit can be raised up to at most
268435456 at startup (see environment
variable ERL_MAX_PORTS in erlang(3))
The maximum limit of 268435456 open
ports will at least on a 32-bit
architecture be impossible to reach
due to memory shortage.
After trying out everybody's suggestion and scouring the Erlang docs, I've come to the conclusion that my problem is with Yaws not being able to keep up with the load.
On the same machine, an Apache Http Components web server (non-blocking I/O) does not have the same problems handling connections at the same thresholds.
Thanks for all your help. I'm going to move on to other erlang based web servers, like Mochiweb.

Resources