# Minimal httpd.conf for Apache 1.1.1 and FastCGI Developer's Kit 1.5 # For testing purposes only -- not for production use! # # 1. Change $APACHE to path name of dir containing your Apache 1.1.1 # kit, i.e. the directory containing the Apache 1.1.1 README. # For instance, you might change $APACHE to /udir/doe/apache_1.1.1 # # Change $FASTCGI to path name of dir containing your FastCGI # Developer's Kit 1.5, i.e. the directory containing the FastCGI # Developer's Kit 1.5 README. For instance, you might change # $FASTCGI to /udir/doe/fcgi-devel-kit # # Save this file as $APACHE/conf/httpd.conf. # # 2. Build Apache 1.1.1 with mod_fastcgi. # # Build the FastCGI Developer's Kit 1.5. # # 3. In a shell, cd to $APACHE and start httpd: # % src/httpd -f $APACHE/conf/httpd.conf # # 4. Use a browser to access # http://$YOUR_HOST:5556/examples/echo.fcg # where $YOUR_HOST is the IP address of the host running httpd. # One config file is plenty ResourceConfig /dev/null AccessConfig /dev/null # Not starting httpd as root, so Port must be larger than 1023 Port 5556 # This is what you'd add to the config if the server is to be # started as root. Don't do this until you've verified that the # server works when started as non-root! Don't use user/group nobody; # define a new user and group specfifically for running the server. # User httpd # Group httpd # Configure just one idle httpd child process, to simplify debugging StartServers 1 MinSpareServers 1 MaxSpareServers 1 # Tell httpd where it should live, turn on access and error logging ServerRoot $APACHE ErrorLog logs/error.log TransferLog logs/access.log ScoreBoardFile logs/httpd.scoreboard # Tell httpd where to get documents DocumentRoot $FASTCGI # This is how you'd place the Unix-domain socket files in the logs # directory (you'd probably want to create a subdirectory for them.) # Don't do this until you've verified that everything works with # the socket files stored locally, in /tmp! # FastCgiIpcDir $APACHE/logs # Start the echo app AppClass $FASTCGI/examples/echo -initial-env STATE=TEXAS # Have mod_fastcgi handle requests for the echo app # (otherwise the server will return the app's binary as a file!) SetHandler fastcgi-script # Start a FastCGI application that's accessible from other machines # AppClass $FastCGI/examples/echo.fcg -port 8978 # # SetHandler fastcgi-script # # Connect to "remote" app started above. Since the app is actually # local, communication will take place using TCP loopback. # To test true remove operation, start one copy of this Web server # on one machine, then start another copy with "localhost" in the line # below changes to the host name of the first machine. # ExternalAppClass $FASTCGI/examples/remote-echo -host localhost:8978 # # SetHandler fastcgi-script # # This is how you'd have mod_fastcgi handle requests for all files # whose names end in .fcg. # AddHandler fastcgi-script fcg # End of httpd.conf