[packages] add hiawatha web server (closes: #4356, thanks to Raphael Huck)

git-svn-id: svn://svn.openwrt.org/openwrt/packages@14339 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
nico 2009-02-01 14:50:30 +00:00
parent 88ff7a5838
commit 82104f5bb7
4 changed files with 197 additions and 0 deletions

55
net/hiawatha/Makefile Normal file
View File

@ -0,0 +1,55 @@
#
# Copyright (C) 2009 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
# $Id$
include $(TOPDIR)/rules.mk
PKG_NAME:=hiawatha
PKG_VERSION:=6.10
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://www.hiawatha-webserver.org/files/
PKG_MD5SUM:=78d364b586a766a428b94b4461d4aa04
include $(INCLUDE_DIR)/package.mk
define Package/hiawatha
CATEGORY:=Network
SECTION:=net
SUBMENU:=Web
TITLE:=A very lightweight web server
URL:=http://www.hiawatha-webserver.org/
DEPENDS:=+libpthread
endef
define Package/hiawatha/description
Hiawatha is a webserver for Unix.
endef
CONFIGURE_ARGS+= \
--disable-cache \
--disable-ssl \
--disable-ipv6
CONFIGURE_VARS+= \
ac_cv_file__dev_urandom=yes
define Package/hiawatha/conffiles
/etc/hiawatha/httpd.conf
/etc/hiawatha/mimetype.conf
endef
define Package/hiawatha/install
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/hiawatha $(1)/usr/sbin/
$(INSTALL_DIR) $(1)/etc/hiawatha
$(INSTALL_DATA) ./files/httpd.conf $(1)/etc/hiawatha/
$(INSTALL_DATA) ./files/mimetype.conf $(1)/etc/hiawatha/
endef
$(eval $(call BuildPackage,hiawatha))

View File

@ -0,0 +1,115 @@
# Hiawatha main configuration file
#
# GENERAL SETTINGS
#
#ServerId = www-data
ConnectionsTotal = 150
ConnectionsPerIP = 10
SystemLogfile = /var/log/hiawatha/system.log
GarbageLogfile = /var/log/hiawatha/garbage.log
# BINDING SETTINGS
# A binding is where a client can connect to.
#
Binding {
Port = 80
# Interface = 127.0.0.1
# MaxKeepAlive = 30
# TimeForRequest = 3,20
}
#
#Binding {
# Port = 443
# Interface = ::1
# MaxKeepAlive = 30
# TimeForRequest = 3,20
# ServerKey = hiawatha.pem
# UseSSL = yes
#}
# BANNING SETTINGS
# Deny service to clients who misbehave.
#
#BanOnGarbage = 300
#BanOnMaxPerIP = 60
#BanOnMaxReqSize = 300
#KickOnBan = yes
#RebanDuringBan = yes
# COMMON GATEWAY INTERFACE (CGI) SETTINGS
# These settings can be used to run CGI applications. Use the 'php-fcgi'
# tool to start PHP as a FastCGI daemon.
#
#CGIhandler = /usr/bin/php-cgi:php
#CGIhandler = /usr/bin/perl:pl
#CGIhandler = /usr/bin/python:py
#CGIextension = cgi
#
#FastCGIserver {
# FastCGIid = PHP4
# ConnectTo = 127.0.0.1:2004
# Extension = php, php4
#}
#
#FastCGIserver {
# FastCGIid = PHP5
# ConnectTo = 10.0.0.100:2005, 10.0.0.101:2005
# Extension = php, php5
# SessionTimeout = 30
#}
# URL TOOLKIT
# These URL toolkit rules are made for the Skeleton PHP framework,
# which can be downloaded from: http://skeleton.leisink.org/
#
#UrlToolkit {
# ToolkitID = skeleton
# Match ^/$ Return
# RequestURI isfile Exit
# Match (.*)\?(.*) Rewrite $1&$2
# Match /(.*) Rewrite /index.php?page=$1
#}
# DEFAULT WEBSITE
# It is wise to use your IP address as the hostname of the default website
# and give it a blank webpage. By doing so, automated webscanners won't find
# your possible vulnerable website.
#
Hostname = 127.0.0.1
WebsiteRoot = /www/
StartFile = index.html
AccessLogfile = /var/log/hiawatha/access.log
ErrorLogfile = /var/log/hiawatha/error.log
#ErrorHandler = 404:/error.cgi
# VIRTUAL HOSTS
# Use a VirtualHost section to declare the websites you want to host.
#
#VirtualHost {
# Hostname = www.my-domain.com
# WebsiteRoot = /var/www/my-domain/public
# StartFile = index.php
# AccessLogfile = /var/www/my-domain/log/access.log
# ErrorLogfile = /var/www/my-domain/log/error.log
# ExecuteCGI = yes
# FastCGI = PHP4
# TimeForCGI = 5
#}
# DIRECTORY SETTINGS
# You can specify some settings per directory.
#
#Directory {
# Path = /home/baduser
# ExecuteCGI = no
# UploadSpeed = 10,2
#}

View File

@ -0,0 +1,16 @@
application/pdf pdf
application/octet-stream class
application/x-ns-proxy-autoconfig pac
application/x-shockwave-flash swf
audio/x-wav wav
image/gif gif
image/jpeg jpg
image/jpeg jpeg
image/png png
text/css css
text/html html
text/html htm
text/javascript js
text/plain txt
text/xml dtd
text/xml xml

View File

@ -0,0 +1,11 @@
--- a/envir.c
+++ b/envir.c
@@ -189,6 +189,8 @@ void set_environment(t_session *session,
headerfield_to_environment(session, fcgi_buffer, "User-Agent:", "HTTP_USER_AGENT");
headerfield_to_environment(session, fcgi_buffer, "Via:", "HTTP_VIA");
headerfield_to_environment(session, fcgi_buffer, "X-Forwarded-For:", "HTTP_X_FORWARDED_FOR");
+ headerfield_to_environment(session, fcgi_buffer, "X-Requested-With:", "HTTP_X_REQUESTED_WITH");
+ headerfield_to_environment(session, fcgi_buffer, "X-Requested-Handler:", "HTTP_X_REQUESTED_HANDLER");
if (session->path_info != NULL) {
add_to_environment(fcgi_buffer, "PATH_INFO", session->path_info);