apache2 startet nicht

M

Max02

Aktives Mitglied
Thread Starter
Dabei seit
08.10.2004
Beiträge
158
Reaktionspunkte
0
Hallo

hab den apache2 unter usr/local/apache2 installiert
dann habe ich den allten apache auf den neuen umgebogen
sudo ln -s /usr/local/apache2/bin/apachectl /usr/sbin/apachectl
sudo ln -s /usr/local/apache2/bin/httpd /usr/sbin/httpd

beim starten mit apachectl start kommt immer folgende Meldung:

httpd: Could not open configuration file /Users/max/local/conf/httpd.conf: No such file or directory

wieso sucht der unter /Users/max... statt unter /usr/local/...
 
da hast du wohl beim configure nicht vernünftig das ziel verzeichnis angegeben...
 
./configure --enable-dav=shared --with-gdbm=no --enable-deflate=shared --enable-so --with-berkeley-db=/usr/local/BerkeleyDB.4.2 --with-dbm=db4

so hab ich es gemacht, und dann hast sich der apache unter /usr/loca/apache2 installiert.

was soll ich jetzt tun?
 
mach mal ./configure --help
sieht so aus als hättest du --prefix nicht richtig gesetzt,
oder guck mal nach --sysconfdir
 
oneOeight schrieb:
mach mal ./configure --help
sieht so aus als hättest du --prefix nicht richtig gesetzt,
oder guck mal nach --sysconfdir

/usr/local/apache2/bin max$ ./configure --help
su: ./configure: No such file or directory ???

bei sysconfdir ebenso
soll ich neu installieren, mit --prefix=/usr/local/
 
du musst das ./configure im apache2 source verzeichnis aufrufen, genau wie du es vorher gemacht...

--prefix=/usr/local
ist ein gute idee, aber schau noch mal wegen dem httpd.conf file, wo genau du das haben willst...
mit dem prefix landet das wohl in /usr/local/etc
deswegen das --sysconfdir
 
oneOeight schrieb:
du musst das ./configure im apache2 source verzeichnis aufrufen, genau wie du es vorher gemacht...

--prefix=/usr/local
ist ein gute idee, aber schau noch mal wegen dem httpd.conf file, wo genau du das haben willst...
mit dem prefix landet das wohl in /usr/local/etc
deswegen das --sysconfdir

scheint jetzt zu funktionieren, wenn ich den server starte und auf die url zugreife kommt "It works"

aber in den Systempreferencen ist unter sharing kein häckchen!
wie bekomm ich das hin

danke für dein hilfe1
 
muss mich korregieren:

ich kann zwar unter sharing den server zum laufen bringen, aber dann nicht mehr abschalten, nur mehr über die konsole!

hab gerade einen neustart gemacht und der server war sofort online, wie kann ich das ändern??!!
 
Zuletzt bearbeitet:
Erstelle diese beiden Dateien in /System/Library/StartupItems/Apache:

apache
Code:
#!/bin/sh

##
# Apache HTTP Server
##

. /etc/rc.common

StartService ()
{
 /usr/local/apache2/bin/apachectl start
}

StopService ()
{
 /usr/local/apache2/bin/apachectl stop
}

RestartService ()
{
 /usr/local/apache2/bin/apachectl restart  
}

RunService "$1"
StartupParameters.plist
Code:
{
  Description     = "Apache web server";
  Provides        = ("Web Server");
  Uses            = ("Disks", "NFS");
}

Dann das Script ausführbar machen und die richtigen Zugriffsrechte setzen:
Code:
#> chmod 755 /System/Library/StartupItems/Apache

Mehr zum Thema "StartupItems": *klick*

;)
 
diese datein existieren bereits, nur die erste sieht einwenig anders aus

#!/bin/sh

##
# Apache HTTP Server
##

. /etc/rc.common

StartService ()
{
if [ "${WEBSERVER:=-NO-}" = "-YES-" ]; then
echo "Starting Apache web server"
if [ ! -e /etc/httpd/httpd.conf ] ; then
cp -p /etc/httpd/httpd.conf.default /etc/httpd/httpd.conf
fi
apachectl start
if [ "${WEBPERFCACHESERVER:=-NO-}" = "-YES-" ]; then
if [ -x /usr/sbin/webperfcachectl ]; then
echo "Starting web performance cache server"
/usr/sbin/webperfcachectl start
fi
fi
fi
}

StopService ()
{
if [ -x /usr/sbin/webperfcachectl ]; then
echo "Stopping web performance cache server"
/usr/sbin/webperfcachectl stop
fi
echo "Stopping Apache web server"
apachectl stop
}

RestartService ()
{
if [ "${WEBSERVER:=-NO-}" = "-YES-" ]; then
echo "Restarting Apache web server"
apachectl restart
if [ "${WEBPERFCACHESERVER:=-NO-}" = "-YES-" ]; then
if [ -x /usr/sbin/webperfcachectl ]; then
echo "Restarting web performance cache server"
/usr/sbin/webperfcachectl restart
fi
fi
else
StopService
fi
}

RunService "$1"

soll ich die so lassen
 
musst du den apachectl nicht auch mit vollem pfad angeben?
 
Dann lösche beide. Ich habe mir auch den Apache 2.x nachinstalliert (mit
--prefix=/usr/local/apache2) und so rennt es einwandfrei.

Ansonsten musst du noch in der http.conf den DocumentRoot auf "/Library/
WebServer/Documents" umstellen, den ServerRoot auf "/usr/local/apache2",
und User auf "www", Group ebenfalls "www".
 
oneOeight schrieb:
musst du den apachectl nicht auch mit vollem pfad angeben?

meinst du jetzt in dem script?
die scripts waren schon da

weisst du wie ich das problem mit den systemeinstellungen->sharing lösen kann?
 
Max02 schrieb:
meinst du jetzt in dem script?
die scripts waren schon da

weisst du wie ich das problem mit den systemeinstellungen->sharing lösen kann?
"Sharing" ist in der Konfiguration, wie ich sie oben angeben habe, irrele-
vant, da die /etc/hostconfig so umgangen wird. Mag nicht ganz die feine
Englische Art sein, funktioniert aber.
 
sharing ruft direkt /usr/sbin/apachectl und /usr/libexec/httpd auf, du könntest also mal versuchen die umzubiegen auf deinen apache2
ich glaub das hatte schon mal hier versucht und das klappte nicht...
frag mal die suche...
 
also das mit den scripts passt jetzt.
jetzt läuft mal der apache,..

hab noch ein problem mit subversion:

access_log:
x.x.x.x - - [23/Feb/2006:18:46:33 +0100] "GET /svnindex.xsl HTTP/1.1" 403
214
error_log:
[Thu Feb 23 18:46:33 2006] [error] [client x.x.x.x] (13)Permission denied: file pe
rmissions deny server access: /usr/local/apache2/htdocs/svnindex.xsl, referer: http://ch
ellox.x.x.x.univie.teleweb.at/rep/
[Thu Feb 23 18:46:33 2006] [error] [client x.x.x.x] File does not exist: /usr/loca
l/apache2/htdocs/favicon.ico

die zugehörige httpd_conf:
....
Listen 80
........
LoadModule deflate_module modules/mod_deflate.so
LoadModule dav_module modules/mod_dav.so
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
.....
ServerName chellox.x.x.x.11.15.univie.teleweb.at
......
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
<Location /rep>
DAV svn
SVNPath /usr/local/svnrepos
SVNIndexXSLT "/svnindex.xsl"
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /etc/.svn-auth-file
Require valid-user
</Location>
....

wenn ich auf die url x.x.x.x/rep gehe, dann kommt der login versuch und danach kommt eine leere seite. es sollte aber die revision von dem repository angezeigt werden

hmm, ....
 
Ich würde doch stark dazu raten, den neuen Apache so anzupassen,
dass er sich genau so wie der alte, schon vorinstallierte 1.3.3er Ap-
ache verhält, was auch aus Sicherheitsgründen empfehlenswert ist,
damit der Apache nicht mit den Rechten eines höherprivilegierten
Users läuft. Mach daher am besten die Anpassungen, die ich in #12
empfohlen habe ;)

Starte dann den Apache neu, dann sollte es auch mit den Zugriffsrech-
ten (die wahrscheinlich auch Ursache deines oben geschilderten Prob-
lems sind) klappen.
 
moses_78 schrieb:
Ich würde doch stark dazu raten, den neuen Apache so anzupassen,
dass er sich genau so wie der alte, schon vorinstallierte 1.3.3er Ap-
ache verhält, was auch aus Sicherheitsgründen empfehlenswert ist,
damit der Apache nicht mit den Rechten eines höherprivilegierten
Users läuft. Mach daher am besten die Anpassungen, die ich in #12
empfohlen habe ;)

Starte dann den Apache neu, dann sollte es auch mit den Zugriffsrech-
ten (die wahrscheinlich auch Ursache deines oben geschilderten Prob-
lems sind) klappen.

bin gerade dabei ;o)
 
@moses78

hast du deinen apache eigentlich so konfigurieren können, dass es bei dir mit Sharing klappt

@oneOeight + moses78 danke für eure Hilfe!
 
Max02 schrieb:
@moses78

hast du deinen apache eigentlich so konfigurieren können, dass es bei dir mit Sharing klappt
Ich benutze das Sharing-Kontrollfeld einfach nicht. Der Apache läuft
einfach immer mit, es gibt auch keinen Grund, ihn wieder zu deakti-
vieren, der zieht doch kaum Ressourcen ;)

Oder wie meintest du das sonst mit dem PrefPane?
 
Zurück
Oben Unten