| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- #!/bin/sh /etc/rc.common
- # Copyright (C) 2006 OpenWrt.org
- START=50
- HTTPD_BIN="/usr/sbin/httpd"
- system_config() {
- local cfg="$1"
- config_get hostname "$cfg" hostname
- }
- httpd_config() {
- local cfg="$1"
- local c_file port realm home args
- config_get c_file "$cfg" c_file
- [ -n "$c_file" -a -f "$c_file" ] && append args "-c \"$c_file\""
- config_get port "$cfg" port
- append args "-p ${port:-80}"
- config_get home "$cfg" home
- home="${home:-/www}"
- [ -d "$home" ] || return 1
- append args "-h \"$home\""
- config_get realm "$cfg" realm
- realm="${realm:-$hostname}"
- append args "-r \"$realm\""
- eval "$HTTPD_BIN $args"
- }
- start() {
- [ -x "$HTTPD_BIN" ] || return 1
- unset hostname
- config_load system
- config_foreach system_config system
- hostname="${hostname:-OpenWrt}"
- unset args
- config_load httpd
- [ "$?" != "0" ] && {
- uci_set_default httpd <<EOF
- config 'httpd'
- option 'port' '80'
- option 'home' '/www'
- EOF
- config_load httpd
- }
- config_foreach httpd_config httpd
- }
- stop() {
- killall httpd
- }
|