ok...i'm very very new to freebsd and the rc.d scripts are killing me =)
i recently switched over to freebsd from ubuntu for a few great reasons....i love it but i'm having trouble..
i need to have a second instance of nginx running as a different web user to accomplish something for my situation.
i was able to do this easily in ubuntu but rc.d has me stumped
i changed what i thought was enough to make it work and then i ended up changing more....but no matter what i do it always uses the default configuration file even though i've told it to use a different one.
first i'll post the original script/config file location then i'll post my new one...
i'm sure it's a simple stupid mistake but if someone can point me right.....
original nginx rc.d script
so i made a new config file at /usr/local/etc/nginx/ called nginx2.comnf
changed everything in the script i thought i needed to change
set the proper rc.conf enable="YES" and it won't start with the NEW config
it keeps using the one one
here is my wrongly modified script
any help would make me owe you a million
i recently switched over to freebsd from ubuntu for a few great reasons....i love it but i'm having trouble..
i need to have a second instance of nginx running as a different web user to accomplish something for my situation.
i was able to do this easily in ubuntu but rc.d has me stumped
i changed what i thought was enough to make it work and then i ended up changing more....but no matter what i do it always uses the default configuration file even though i've told it to use a different one.
first i'll post the original script/config file location then i'll post my new one...
i'm sure it's a simple stupid mistake but if someone can point me right.....
original nginx rc.d script
Code:
#!/bin/sh
# $FreeBSD: ports/www/nginx/files/nginx.sh.in,v 1.4 2008/10/15 07:36:39 osa Exp $
# PROVIDE: nginx
# REQUIRE: LOGIN cleanvar
# KEYWORD: shutdown
#
# Add the following lines to /etc/rc.conf to enable nginx:
# nginx_enable (bool): Set to "NO" by default.
# Set it to "YES" to enable nginx
# nginx_profiles (str): Set to "NO" by default.
# Unsupported feature, reserved for future releases.
# nginxlimits_enable (bool): Set to "NO" by default.
# Set it to yes to run `limits $limits_args`
# just before nginx starts.
# nginx_flags (str): Set to "" by default.
# Extra flags passed to start command.
# nginxlimits_args (str): Default to "-e -U %%WWWOWN%%"
# Arguments of pre-start limits run.
. /etc/rc.subr
name="nginx"
rcvar=`set_rcvar`
start_precmd="nginx_precmd"
restart_precmd="nginx_checkconfig"
reload_precmd="nginx_checkconfig"
configtest_cmd="nginx_checkconfig"
upgrade_precmd="nginx_checkconfig"
upgrade_cmd="nginx_upgrade"
command="/usr/local/sbin/nginx"
_pidprefix="/var/run/nginx"
pidfile="${_pidprefix}.pid"
required_files=/usr/local/etc/nginx/nginx.conf
[ -z "$nginx_enable" ] && nginx_enable="NO"
[ -z "$nginx_profiles" ] && nginx_profiles="NO"
[ -z "$nginx_flags" ] && nginx_flags=""
[ -z "$nginxlimits_enable" ] && nginxlimits_enable="NO"
[ -z "$nginxlimits_args" ] && nginxlimits_args="-e -U %%WWWOWN%%"
load_rc_config $name
if [ -n "$2" ]; then
echo "Profiles are unsupported by this version, exit..."
exit 1
fi
nginx_checkconfig()
{
echo "Performing sanity check on nginx configuration:"
eval ${command} ${nginx_flags} -t
}
nginx_upgrade()
{
echo "Upgrading nginx binary:"
reload_precmd=""
sig_reload="USR2"
run_rc_command ${rc_prefix}reload $rc_extra_args || return 1
sleep 1
echo "Stopping old binary:"
sig_reload="QUIT"
pidfile="$pidfile.oldbin"
run_rc_command ${rc_prefix}reload $rc_extra_args || return 1
}
nginx_precmd()
{
nginx_checkconfig
if checkyesno nginxlimits_enable
then
eval `/usr/bin/limits ${nginxlimits_args}` 2>/dev/null
else
return 0
fi
}
extra_commands="reload configtest upgrade"
run_rc_command "$1"
so i made a new config file at /usr/local/etc/nginx/ called nginx2.comnf
changed everything in the script i thought i needed to change
set the proper rc.conf enable="YES" and it won't start with the NEW config
it keeps using the one one
here is my wrongly modified script
Code:
#!/bin/sh
# $FreeBSD: ports/www/nginx/files/nginx.sh.in,v 1.4 2008/10/15 07:36:39 osa Exp $
# PROVIDE: nginx
# REQUIRE: LOGIN cleanvar
# KEYWORD: shutdown
#
# Add the following lines to /etc/rc.conf to enable nginx:
# nginx_enable (bool): Set to "NO" by default.
# Set it to "YES" to enable nginx
# nginx_profiles (str): Set to "NO" by default.
# Unsupported feature, reserved for future releases.
# nginxlimits_enable (bool): Set to "NO" by default.
# Set it to yes to run `limits $limits_args`
# just before nginx starts.
# nginx_flags (str): Set to "" by default.
# Extra flags passed to start command.
# nginxlimits_args (str): Default to "-e -U %%WWWOWN%%"
# Arguments of pre-start limits run.
. /etc/rc.subr
name="nginx2"
rcvar=`set_rcvar`
start_precmd="nginx_precmd"
restart_precmd="nginx_checkconfig"
reload_precmd="nginx_checkconfig"
configtest_cmd="nginx_checkconfig"
upgrade_precmd="nginx_checkconfig"
upgrade_cmd="nginx_upgrade"
command="/usr/local/sbin/nginx2"
_pidprefix="/var/run/nginx2"
pidfile="${_pidprefix}.pid"
required_files=/usr/local/etc/nginx/nginx2.conf
[ -z "$nginx_enable" ] && nginx_enable="NO"
[ -z "$nginx_profiles" ] && nginx_profiles="NO"
[ -z "$nginx_flags" ] && nginx_flags=""
[ -z "$nginxlimits_enable" ] && nginxlimits_enable="NO"
[ -z "$nginxlimits_args" ] && nginxlimits_args="-e -U %%WWWOWN%%"
load_rc_config $name
if [ -n "$2" ]; then
echo "Profiles are unsupported by this version, exit..."
exit 1
fi
nginx_checkconfig()
{
echo "Performing sanity check on nginx configuration:"
eval ${command} ${nginx_flags} -t
}
nginx_upgrade()
{
echo "Upgrading nginx binary:"
reload_precmd=""
sig_reload="USR2"
run_rc_command ${rc_prefix}reload $rc_extra_args || return 1
sleep 1
echo "Stopping old binary:"
sig_reload="QUIT"
pidfile="$pidfile.oldbin"
run_rc_command ${rc_prefix}reload $rc_extra_args || return 1
}
nginx_precmd()
{
nginx_checkconfig
if checkyesno nginxlimits_enable
then
eval `/usr/bin/limits ${nginxlimits_args}` 2>/dev/null
else
return 0
fi
}
extra_commands="reload configtest upgrade"
run_rc_command "$1"