Introduction ^

Sproxy is an HTTP proxy server that collects URLs including GET and POST information in a “siege-friendly” manner. It was designed to ease the burden associated with the creation of a siege urls.txt file. To collect URLs for a siege, configure your browser to use the sproxy and surf the site. Every resource your browser requests will be saved as a “siege-friendly” URL. Sproxy is licensed under the GNU Public License.

Invocation ^

The format for invoking sproxy is:
sproxy [options] [hostname]
(If a hostname is not specified, then sproxy will bind to localhost [])

The program does support the following command line options:

‘ -V ‘
Print version information to the screen.

‘ -h ‘
Print the help section. This presents a summary of the options discussed in this section of the manual.

‘ -t NUM ‘
Timeout, set the sproxy connection timeout to NUMM (default 120)

‘ -p NUM ‘
Port, specify the port on which sproxy will listen for incoming connections (default 9001)

‘ -f FILE ‘
File, specify an alternative configuration file. (default $prefix/etc/sproxy.conf)

‘ -o FILE ‘
Output file, specify an alternative file to write URLs. (default $HOME/urls.txt)

Resource File and Configuration Settings ^

Sproxy relies on both command line options and a configuration file for its run time configuration. Command line options take precedent over the configuration file. The default configuration file is $prefix/etc/sproxy.conf. As noted above, you can override this option with -f /path/to/file. Here is a sample configuration file:

# sproxy v1.02 configuration file
# DATE: January-03-2004
# for more information about this program, visit:
# http://www.joedog.org/

# this directive tells sproxy to bind to this
# host address. If no host directive is given, then
# sproxy will bind to localhost (
# To use sproxy, configure your browser to use
# this HTTP proxy address.
# example: host = ben
host = ben.joedog.org
# this directive tells sproxy to listen on this
# port number. The default is 9001. To use sproxy,
# configure your browser to use this HTTP proxy port.
# example: port = 8080
port = 1025
# this directive tells sproxy to write all its
# URLs to this alternative output file. The default
# file is $HOME/urls.txt You may also specify an
# alternative output file with the -o option on the
# command line.
# example: output = /home/jeff/haha.txt
output = /usr/local/src/urls.txt
# this directive tells sproxy to run in verbose
# mode in which all collected URLs are printed to
# screen. sproxy still writes all URLs to its
# output file. You may set this directive to true on
# the command line with the -v option. (default: false)
# example: verbose = true
verbose = true

# this directive sets the sproxy connection timeout
# in seconds. The default timeout is 120 seconds. You may
# also set this on the command line with the -t option.
# example: timeout = 30
# timeout = 90
timeout = 30

Problems and Known Issues ^

This section of the manual has been deprecated, see the file KNOWNBUGS in your sproxy distribution OR read the FAQ, on this website.

Platforms ^

Sproxy was written in perl and should run on any platform that supports perl 5. Required modules are included with the distribution. They are installed as needed.

Posted in | 1 Comment

One Response to “Sproxy Manual”

  1. m nair says:


    I have a load balancer which has my dev box as a node in a pool. Lets say the IP of the VIP is . I tried running the sproxy against the host but it gave an error in line 56…and I have no clue what it stands for….My question is does sproxy work with a VIP ?

Leave a Reply

Recent Comments

  • CC: Many thks for your reply.
  • Jeff Fulmer: You mean your operating environment can only sustain more than 1000 connections for a few minutes....
  • CC: HI BUDDY I met this when the number of concurrent connections > 1000,siege can only sustained for a few mins....
  • Patrick: Hello- Have a simple 3 tier system and wanting to have multiple Siege testers run against multiple...
  • Oleg: Hello. Are the response time is the same as TTFB?