Not working, with 0.0.0.0. I can access the other machine and in the book
it uses the 127.0.0.1

Richard

On Wed, Mar 7, 2012 at 3:22 PM, Ross Peoples <[email protected]> wrote:

> The -i argument should be 0.0.0.0 instead of 127.0.0.1 if you want other
> machines on the network to access the web2py instance.
>
>
> On Wednesday, March 7, 2012 3:07:20 PM UTC-5, Richard wrote:
>>
>> Hello,
>>
>> I am pretty mistify by that issue. My ssh port forwarding is running just
>> fine, I can start second web2py instance under 8002 port like this :
>>
>> sudo nohup python web2py.py --nogui -p 8002 -i 127.0.0.1 -a 'PWD' &
>>
>> It just work.
>>
>> But when I transfert this command into an init daemon, my file look like
>> this :
>>
>> #! /bin/sh
>> ### BEGIN INIT INFO
>> # startup script for Ubuntu and Debian Linux servers
>> #
>> # To use this file
>> # cp ubuntu.sh /etc/init.d/web2py
>> #
>> # To automatitcally start at reboot
>> # sudo update-rc.d web2py defaults
>> #
>> # Provides:          web2py
>> # Required-Start:    $local_fs $remote_fs
>> # Required-Stop:     $local_fs $remote_fs
>> # Default-Start:     2 3 4 5
>> # Default-Stop:      S 0 1 6
>> # Short-Description: web2py initscript
>> # Description:       This file starts up the web2py server.
>> ### END INIT INFO
>>
>> # Author: Mark Moore
>>
>> PATH=/usr/sbin:/usr/bin:/sbin:**/bin
>> DESC="Web Framework"
>> NAME=web2py
>> PIDDIR=/var/run/$NAME
>> PIDFILE=$PIDDIR/$NAME.pid
>> SCRIPTNAME=/etc/init.d/$NAME
>> DAEMON=/usr/bin/python
>> DAEMON_DIR=/home/www-data/$**NAME
>> *DAEMON_ARGS="web2py.py --nogui -p 8002 -i 127.0.0.1 -a 
>> 'PWD'--pid_filename=$PIDFILE"
>> *
>> DAEMON_USER=root
>>
>> # Exit if the package is not installed
>> [ -x "$DAEMON" ] || exit 0
>>
>> # Read configuration variable file if it is present
>> [ -r /etc/default/$NAME ] && . /etc/default/$NAME
>>
>> # Load the VERBOSE setting and other rcS variables
>> [ -f /etc/default/rcS ] && . /etc/default/rcS
>>
>> # Define LSB log_* functions.
>> # Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
>> . /lib/lsb/init-functions
>>
>> #
>> # Function that starts the daemon/service
>> #
>> do_start()
>> {
>> # Return
>> #   0 if daemon has been started
>> #   1 if daemon was already running
>> #   2 if daemon could not be started
>>
>> # The PIDDIR should normally be created during installation. This
>> # fixes things just in case.
>> [ -d $PIDDIR ] || mkdir -p $PIDDIR
>>         [ -n "$DAEMON_USER" ] && chown --recursive $DAEMON_USER $PIDDIR
>>
>> # Check to see if the daemon is already running.
>> start-stop-daemon --stop --test --quiet --pidfile $PIDFILE \
>> && return 1
>>
>> start-stop-daemon --start --quiet --pidfile $PIDFILE \
>> ${DAEMON_USER:+--chuid $DAEMON_USER} --chdir $DAEMON_DIR \
>> --background --exec $DAEMON -- $DAEMON_ARGS \
>> || return 2
>>
>> return 0;
>> }
>>
>> #
>> # Function that stops the daemon/service
>> #
>> do_stop()
>> {
>> # Return
>> #   0 if daemon has been stopped
>> #   1 if daemon was already stopped
>> #   2 if daemon could not be stopped
>> #   other if a failure occurred
>>
>> start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE
>> RETVAL=$?
>> # Many daemons don't delete their pidfiles when they exit.
>> rm -f $PIDFILE
>> return "$RETVAL"
>> }
>>
>> #
>> # Function that restarts the daemon/service
>> #
>> do_restart()
>> {
>> # Return
>> #   0 if daemon was (re-)started
>> #   1 if daemon was not strated or re-started
>>
>> do_stop
>> case "$?" in
>> 0|1)
>> do_start
>> case "$?" in
>> 0) RETVAL=0 ;;
>> 1) RETVAL=1 ;; # Old process is still running
>> *) RETVAL=1 ;; # Failed to start
>> esac
>> ;;
>> *) RETVAL=1 ;; # Failed to stop
>> esac
>>
>> return "$RETVAL"
>> }
>>
>> #
>> # Function that sends a SIGHUP to the daemon/service
>> #
>> do_reload() {
>> #
>> # If the daemon can reload its configuration without
>> # restarting (for example, when it is sent a SIGHUP),
>> # then implement that here.
>> #
>> start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE
>> return 0
>> }
>>
>> #
>> # Function that queries the status of the daemon/service
>> #
>> do_status()
>> {
>> # Return
>> #   0 if daemon is responding and OK
>> #   1 if daemon is not responding, but PIDFILE exists
>> #   2 if daemon is not responding, but LOCKFILE exists
>> #   3 if deamon is not running
>> #   4 if daemon status is unknown
>>
>> # Check to see if the daemon is already running.
>> start-stop-daemon --stop --test --quiet --pidfile $PIDFILE \
>> && return 0
>> [ -f $PIDFILE ] && return 1
>> return 3
>> }
>>
>> case "$1" in
>>   start)
>> [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
>> do_start
>> RETVAL=$?
>> [ "$VERBOSE" != no ] &&
>> case "$RETVAL" in
>> 0|1) log_end_msg 0 ;;
>> *)   log_end_msg 1 ;;
>> esac
>> exit "$RETVAL"
>> ;;
>>   stop)
>> [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
>> do_stop
>> RETVAL=$?
>> [ "$VERBOSE" != no ] &&
>> case "$RETVAL" in
>> 0|1) log_end_msg 0 ;;
>> *)   log_end_msg 1 ;;
>> esac
>> exit "$RETVAL"
>> ;;
>>   #reload|force-reload)
>> #
>> # If do_reload() is not implemented then leave this commented out
>> # and leave 'force-reload' as an alias for 'restart'.
>> #
>> #[ "$VERBOSE" != no ] && log_daemon_msg "Reloading $DESC" "$NAME"
>> #do_reload
>> #RETVAL=$?
>> #[ "$VERBOSE" != no ] && log_end_msg $?
>> #exit "$RETVAL"
>> #;;
>>   restart|force-reload)
>> #
>> # If the "reload" option is implemented then remove the
>> # 'force-reload' alias
>> #
>> [ "$VERBOSE" != no ] && log_daemon_msg "Restarting $DESC" "$NAME"
>> do_restart
>> RETVAL=$?
>> [ "$VERBOSE" != no ] && log_end_msg "$RETVAL"
>> exit "$RETVAL"
>> ;;
>>   status)
>>     do_status
>> RETVAL=$?
>>     [ "$VERBOSE" != no ] &&
>> case "$RETVAL" in
>>   0) log_success_msg "$NAME is running" ;;
>>   *) log_failure_msg "$NAME is not running" ;;
>> esac
>>     exit "$RETVAL"
>> ;;
>>   *)
>> echo "Usage: $SCRIPTNAME {start|stop|restart|force-**reload|status}" >&2
>> exit 3
>> ;;
>> esac
>>
>> :
>>
>> # This was based off /etc/init.d/skeleton from the Ubuntu 8.04 Hardy
>> release.
>> # (md5sum: da0162012b6a916bdbd4e2580282af**78).  If we notice that
>> changes, we
>> # should re-examine things.
>>
>> # The configuration at the very top seems to be documented as part of the
>> # Linux Standard Base (LSB) Specification.  See section 20.6 Facility
>> Names
>> # in particular.  This is also where I got the spec for the status parm.
>>
>> # References:
>> # http://refspecs.linux-**foundation.org/LSB_3.2.0/LSB-**
>> Core-generic/LSB-Core-generic.**pdf<http://refspecs.linux-foundation.org/LSB_3.2.0/LSB-Core-generic/LSB-Core-generic.pdf>
>> # Debian Policy SysV init: http://www.debian.org/doc/**
>> debian-policy/ch-opersys.html#**s-sysvinit<http://www.debian.org/doc/debian-policy/ch-opersys.html#s-sysvinit>
>> # Examine files in /usr/share/doc/sysv-rc/
>>
>> It started the second web2py instance properly, but when I try to login
>> to the admin app the password recognition failed... I can access the page
>> over the forwarding port over SSH, but admin don't let me in with the
>> password I pass in the daemon_args (this line) : *DAEMON_ARGS="web2py.py
>> --nogui -p 8002 -i 127.0.0.1 -a 'PWD' --pid_filename=$PIDFILE"*
>>
>> I put the changes I maid in orange...
>>
>> Also, it uses to work yesterday.
>>
>> Any idea?
>>
>> Richard
>>
>

Reply via email to