Avatar billede ipkiss_ Nybegynder
10. februar 2002 - 02:11 Der er 11 kommentarer

Få Apache til at starte op automatisk?

Hej!
Hvordan får jeg Apache til at starte op automatisk?
Jeg ved jeg skal ha' et shell script liggende i /etc/rc.d/init.d/httpd

men hvad skal der stå inde i scriptet for at den starter som en service for alle brugere?

Eller er jeg helt forkert på den?

hilsen lars
Avatar billede ipkiss_ Nybegynder
10. februar 2002 - 02:11 #1
Det er under Red hat 7.2
Avatar billede netraider Nybegynder
10. februar 2002 - 02:17 #2
Du skal sætte dine runlevels.. Det gøres med runlevel editoren som er en del af control-panel programmet.... Det bedste du kan er bare at skaffe en RPM version af Apache til redhat se evt. ftp.redhat.com
Avatar billede Noone Nybegynder
10. februar 2002 - 03:03 #3
Det nemmeste er vel bare at skrive (som root)

chklevel --levels 345 httpd on
Avatar billede Noone Nybegynder
10. februar 2002 - 03:05 #4
Hvis scriptet mangler, kan du få en kopi af mit, som du så skal rette til.
Avatar billede ipkiss_ Nybegynder
10. februar 2002 - 10:10 #5
Jeg har prævet chklevel --levels 345 httpd on, men det virker ikke ... den kender åbentbart ikke kommandoen chklevel.

Hvor skulle scriptet ligge, hvis jeg havde det?
Ellers må du meget gerne sende det til ledj@privat.dk

hilsen lars
Avatar billede pbudk Nybegynder
11. februar 2002 - 07:31 #6
prøv i stedet med chkconfig --levels 345 httpd on

Scriptet ligger med stor sandsynlighed i /etc/rc.d/init.d

Eventuelt kan du prøve med chkconfig --list httpd
derved kan du se i hvilke runlevels apache starter op.
Avatar billede ipkiss_ Nybegynder
11. februar 2002 - 09:44 #7
hvad skal jeg gøre, hvis scriptet httpd ikke ligger i init.d (det er jeg ret sikker på det ikke gør) ?
har jeg compilet sourcen forkert, det hele virker ellers fint med php osv.
hvor kan jeg finde/hente scriptet henne?
Avatar billede pbudk Nybegynder
11. februar 2002 - 14:55 #8
min /etc/rc.d/init.d/httpd ser sådan her ud !

#!/bin/bash
#
# Startup script for the Apache Web Server
#
# chkconfig: - 85 15
# description: Apache is a World Wide Web server.  It is used to serve \
#          HTML files and CGI.
# processname: httpd
# pidfile: /var/run/httpd.pid
# config: /etc/httpd/conf/access.conf
# config: /etc/httpd/conf/httpd.conf
# config: /etc/httpd/conf/srm.conf

# Source function library.
. /etc/rc.d/init.d/functions

# This will prevent initlog from swallowing up a pass-phrase prompt if
# mod_ssl needs a pass-phrase from the user.
INITLOG_ARGS=""

# Path to the apachectl script, server binary, and short-form for messages.
apachectl=/usr/sbin/apachectl
httpd=/usr/sbin/httpd
prog=httpd
RETVAL=0

# Find the installed modules and convert their names into arguments httpd
# can use.
moduleargs() {
    moduledir=/usr/lib/apache
    moduleargs=`
    /usr/bin/find ${moduledir} -type f -perm -0100 -name "*.so" | env -i tr '[:lower:]' '[:upper:]' | awk '{\
    gsub(/.*\//,"");\
    gsub(/^MOD_/,"");\
    gsub(/^LIB/,"");\
    gsub(/\.SO$/,"");\
    print "-DHAVE_" $0}'`
    echo ${moduleargs}
}

# The semantics of these two functions differ from the way apachectl does
# things -- attempting to start while running is a failure, and shutdown
# when not running is also a failure.  So we just do it the way init scripts
# are expected to behave here.
start() {
        echo -n $"Starting $prog: "
        daemon $httpd `moduleargs` $OPTIONS
        RETVAL=$?
        echo
        [ $RETVAL = 0 ] && touch /var/lock/subsys/httpd
        return $RETVAL
}
stop() {
    echo -n $"Stopping $prog: "
    killproc $httpd
    RETVAL=$?
    echo
    [ $RETVAL = 0 ] && rm -f /var/lock/subsys/httpd /var/run/httpd.pid
}

# See how we were called.
case "$1" in
  start)
    start
    ;;
  stop)
    stop
    ;;
  status)
        status $httpd
    ;;
  restart)
    stop
    start
    ;;
  condrestart)
    if [ -f /var/run/httpd.pid ] ; then
        stop
        start
    fi
    ;;
  graceful|help|configtest)
    $apachectl $@
    RETVAL=$?
    ;;
  *)
    echo $"Usage: $prog {start|stop|restart|condrestart|status|fullstatus|graceful|help|configtest}"
    exit 1
esac

exit $RETVAL
Avatar billede ipkiss_ Nybegynder
11. februar 2002 - 15:16 #9
der er tilsyneladende heller ikke nogen kommando, som hedder chkconfig?!!!
Avatar billede ipkiss_ Nybegynder
11. februar 2002 - 15:18 #10
der er tilsyneladende heller ikke nogen kommando, som hedder chkconfig?!!!
Avatar billede Noone Nybegynder
14. februar 2002 - 00:49 #11
[chano@kovu chano]$ rpm -qf $(which chkconfig)
chkconfig-1.0.6-1

Installere pakken chkconfig med denne kommando (som root)
rpm -ivh ftp://ftp.sunsite.dk/disk4/redhat/7.2/en/os/i386/RedHat/RPMS/chkconfig-1.2.24-1.i386.rpm

Derefter har du chkconfig, og kan gøre som beskrevet ovenfor.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Uanset kodesprog, så giver vi dig mulighederne for at udvikle det, du behøver.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester