mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-21 06:33:41 +00:00
ebd408630f
SVN-Revision: 12663
55 lines
1005 B
Bash
Executable File
55 lines
1005 B
Bash
Executable File
#!/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
|
|
}
|