mirror of
https://github.com/Ponce/slackbuilds
synced 2024-11-22 19:44:21 +01:00
87 lines
2.6 KiB
Bash
87 lines
2.6 KiB
Bash
#!/bin/sh
|
|
#
|
|
# Varnish daemon control script.
|
|
# Written for Slackware Linux by Cherife Li <cherife-#-dotimes.com>.
|
|
|
|
VARNISH_VCL_CONF=/etc/varnish/default.vcl
|
|
VARNISH_PIDFILE=/var/run/varnish.pid
|
|
VARNISH_LOCKFILE=/var/lock/subsys/varnish
|
|
VARNISH_DAEMON=/usr/sbin/varnishd
|
|
VARNISH_PARAM="-p thread_pool_max=1500 -p thread_pools=5 -p listen_depth=512 -p client_http11=off"
|
|
|
|
VARNISH_LOG_PIDFILE=/var/run/varnishlog.pid
|
|
VARNISH_LOG_LOCKFILE=/var/lock/subsys/varnishlog
|
|
VARNISH_LOG_DAEMON=/usr/bin/varnishlog
|
|
LOGFILE=/var/log/varnish.log
|
|
VARNISH_LOG_OPTS="-a -w ${LOGFILE} -D -P ${VARNISH_LOG_PIDFILE}"
|
|
|
|
# Default address and port to bind to
|
|
# Blank address means all IPv4 and IPv6 interfaces, otherwise specify
|
|
# a host name, an IPv4 dotted quad, or an IPv6 address in brackets.
|
|
VARNISH_LISTEN_ADDRESS=
|
|
VARNISH_LISTEN_PORT=80
|
|
|
|
# Telnet admin interface listen address and port
|
|
VARNISH_ADMIN_LISTEN_ADDRESS=127.0.0.1
|
|
VARNISH_ADMIN_LISTEN_PORT=81
|
|
|
|
# The minimum number of worker threads to start
|
|
VARNISH_MIN_THREADS=1
|
|
|
|
# The Maximum number of worker threads to start
|
|
VARNISH_MAX_THREADS=100
|
|
|
|
# Idle timeout for worker threads
|
|
VARNISH_THREAD_TIMEOUT=120
|
|
|
|
# Cache file location
|
|
VARNISH_STORAGE_FILE=/var/lib/varnish_storage.bin
|
|
|
|
# Cache file size: in bytes, optionally using k / M / G / T suffix,
|
|
# or in percentage of available disk space using the % suffix.
|
|
VARNISH_STORAGE_SIZE=1G
|
|
|
|
# Backend storage specification
|
|
VARNISH_STORAGE="file,${VARNISH_STORAGE_FILE},${VARNISH_STORAGE_SIZE}"
|
|
|
|
# Default TTL used when the backend does not specify one
|
|
VARNISH_TTL=120
|
|
|
|
# VARNISH_DAEMON_OPTS is used by the init script. If you add or remove options, make
|
|
# sure you update this section, too.
|
|
VARNISH_DAEMON_OPTS="-a ${VARNISH_LISTEN_ADDRESS}:${VARNISH_LISTEN_PORT} \
|
|
-f ${VARNISH_VCL_CONF} \
|
|
-T ${VARNISH_ADMIN_LISTEN_ADDRESS}:${VARNISH_ADMIN_LISTEN_PORT} \
|
|
-t ${VARNISH_TTL} \
|
|
-w ${VARNISH_MIN_THREADS},${VARNISH_MAX_THREADS},${VARNISH_THREAD_TIMEOUT} \
|
|
-u nobody -g nobody \
|
|
-P ${VARNISH_PIDFILE} \
|
|
-s ${VARNISH_STORAGE}"
|
|
|
|
case "$1" in
|
|
'start')
|
|
echo -n "Starting varnish daemon..."
|
|
$VARNISH_DAEMON $VARNISH_DAEMON_OPTS $VARNISH_PARAM > /dev/null 2>&1
|
|
$VARNISH_LOG_DAEMON $VARNISH_LOG_OPTS
|
|
touch $VARNISH_LOCKFILE $VARNISH_LOG_LOCKFILE
|
|
echo
|
|
;;
|
|
'stop')
|
|
echo -n "Stopping varnish daemon..."
|
|
kill -9 $(cat $VARNISH_PIDFILE)
|
|
kill -9 $(cat $VARNISH_LOG_PIDFILE)
|
|
rm -f $VARNISH_PIDFILE $VARNISH_LOG_PIDFILE $VARNISH_LOCKFILE $VARNISH_LOG_LOCKFILE
|
|
killall varnishd 2> /dev/null
|
|
echo
|
|
;;
|
|
'restart')
|
|
$0 stop
|
|
sleep 3
|
|
$0 start
|
|
;;
|
|
*)
|
|
echo "usage $0 {start|stop|restart}"
|
|
exit 1
|
|
esac
|
|
|
|
exit 0
|