[CLUE-Tech] critical error 98 on Apache -- virtual hosting

jason at matchingmoms.com jason at matchingmoms.com
Mon Dec 3 19:58:46 MST 2001


I set up "normal" apache fine.  I would enter localhost or my IP address
into my browser and my default index.html would appear.

Now I'm trying to set up virtual hosting.  Here's a snippet from my
httpd.conf:

#
Include conf/virtual_hosts.conf
#

and then . . .

$ cat /etc/httpd/conf/virtual_hosts.conf
NameVirtualHost 192.168.0.200

<VirtualHost 192.168.0.200>
ServerName www.powerpull.net
DirectoryIndex index.html index.htm index.shtml index.php index.php4
index.php3 index.cgi
Options Indexes
ServerAdmin webmaster at powerpull.net
DocumentRoot /home/powerpull/html
ErrorLog /var/log/httpd/powerpull.net-error_log
CustomLog /var/log/httpd/powerpull.net-access_log common
</VirtualHost>

<VirtualHost 192.168.0.200>
ServerName www.matchingmoms.com
DirectoryIndex index.html index.htm index.shtml index.php index.php4
index.php3 index.cgi
Options Indexes
ServerAdmin webmaster at matchingmoms.com
DocumentRoot /home/matchingmoms/html
ErrorLog /var/log/httpd/matchingmoms.com-error_log
CustomLog /var/log/httpd/matchingmoms.com-access_log common
</VirtualHost>

<VirtualHost 192.168.0.200>
ServerName www.astroconsulting.net
DirectoryIndex index.html index.htm index.shtml index.php index.php4
index.php3 index.cgi
Options Indexes
ServerAdmin webmaster at astroconsulting.net
DocumentRoot /home/astroconsulting/html
ErrorLog /var/log/httpd/astroconsulting.net-error_log
CustomLog /var/log/httpd/astroconsulting.net-access_log common
</VirtualHost>


So, when I type localhost into my browser I get the standard index.html
fine.  But, when I type any of my virtual domains (www.powerpull.net,
www.matchingmoms.com, or www.astroconsulting.net) or 192.168.0.200 into my
browser I get a "Forbidden.  You don't have permission to access / on this
server." message.  In the error_log I see:
[Sun Nov 25 04:01:08 2001] [crit] (98)Address already in use: make_sock:
could not bind to port 80

I found some information about this error on google
(http://groups.google.com/groups?q=apache+error+crit+98&hl=en&start=10&sa=N)
but I could not solve my problem.

Please help.
Thanks,
Jason

p.s.  I've appended my httpd.conf if you are interested

# httpd.conf -- Apache HTTP server configuration file

ServerType standalone

ServerRoot "/etc/httpd"

LockFile /var/lock/httpd.lock

PidFile /var/run/httpd.pid

ScoreBoardFile /var/run/httpd.scoreboard

#ResourceConfig conf/srm.conf
#AccessConfig conf/access.conf

Timeout 300

KeepAlive On

MaxKeepAliveRequests 100

KeepAliveTimeout 15

MinSpareServers 5
MaxSpareServers 20
StartServers 8
MaxClients 150
MaxRequestsPerChild 100

# next line commented by JSF
#Listen 80

BindAddress *

# Added by JSF
Include conf/modules.conf
# end alteration

#ExtendedStatus On

# next line commented by JSF
#Port 80

User apache
Group apache

ServerAdmin root at localhost

# Altered by JSF
#ServerName localhost
ServerName abigail
# End alteration

DocumentRoot "/var/www/html"

<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>

<Directory "/var/www/html">
    Options Indexes Includes FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

UserDir public_html

DirectoryIndex index.html index.htm index.shtml index.php index.php4
index.php3 index.cgi

AccessFileName .htaccess

<Files ~ "^\.ht">
    Order allow,deny
    Deny from all
</Files>

#CacheNegotiatedDocs

UseCanonicalName On

TypesConfig /etc/mime.types

DefaultType text/plain

<IfModule mod_mime_magic.c>
    MIMEMagicFile conf/magic
</IfModule>

HostnameLookups Off

ErrorLog /var/log/httpd/error_log

LogLevel debug

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""
combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent

# CustomLog /var/log/httpd/access_log common
CustomLog /var/log/httpd/access_log combined
#CustomLog /var/log/httpd/referer_log referer
#CustomLog /var/log/httpd/agent_log agent
#CustomLog /var/log/httpd/access_log combined

ServerSignature On

Alias /icons/ "/var/www/icons/"

<Directory "/var/www/icons">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"

<Directory "/var/www/cgi-bin">
    AllowOverride None
    Options ExecCGI
    Order allow,deny
    Allow from all
</Directory>

IndexOptions FancyIndexing

AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip

AddIconByType (TXT,/icons/text.gif) text/*
AddIconByType (IMG,/icons/image2.gif) image/*
AddIconByType (SND,/icons/sound2.gif) audio/*
AddIconByType (VID,/icons/movie.gif) video/*

AddIcon /icons/binary.gif .bin .exe
AddIcon /icons/binhex.gif .hqx
AddIcon /icons/tar.gif .tar
AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
AddIcon /icons/a.gif .ps .ai .eps
AddIcon /icons/layout.gif .html .shtml .htm .pdf
AddIcon /icons/text.gif .txt
AddIcon /icons/c.gif .c
AddIcon /icons/p.gif .pl .py
AddIcon /icons/f.gif .for
AddIcon /icons/dvi.gif .dvi
AddIcon /icons/uuencoded.gif .uu
AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
AddIcon /icons/tex.gif .tex
AddIcon /icons/bomb.gif core

AddIcon /icons/back.gif ..
AddIcon /icons/hand.right.gif README
AddIcon /icons/folder.gif ^^DIRECTORY^^
AddIcon /icons/blank.gif ^^BLANKICON^^

DefaultIcon /icons/unknown.gif

#AddDescription "GZIP compressed document" .gz
#AddDescription "tar archive" .tar
#AddDescription "GZIP compressed tar archive" .tgz

ReadmeName README.html
HeaderName HEADER.html

IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t

AddEncoding x-compress Z
AddEncoding x-gzip gz tgz

AddLanguage en .en
AddLanguage fr .fr
AddLanguage de .de
AddLanguage da .da
AddLanguage el .el
AddLanguage it .it

LanguagePriority en fr de

<IfModule mod_php4.c>
  AddType application/x-httpd-php .php4 .php3 .phtml .php
  AddType application/x-httpd-php-source .phps
</IfModule>

<IfModule mod_php3.c>
  AddType application/x-httpd-php3 .php3
  AddType application/x-httpd-php3-source .phps
</IfModule>

<IfModule mod_php.c>
  AddType application/x-httpd-php .phtml
</IfModule>

AddType application/x-tar .tgz

#AddHandler cgi-script .cgi

AddType text/html .shtml
AddHandler server-parsed .shtml
#AddHandler send-as-is asis
AddHandler imap-file map
#AddHandler type-map var

#MetaDir .web
#MetaSuffix .meta

#
# Customizable error response (Apache style)
#  these come in three flavors
#
#    1) plain text
#ErrorDocument 500 "The server made a boo boo.
#  n.b.  the (") marks it as text, it does not get output
#
#    2) local redirects
#ErrorDocument 404 /missing.html
#  to redirect to local URL /missing.html
#ErrorDocument 404 /cgi-bin/missing_handler.pl
#  N.B.: You can redirect to a script or a document using
server-side-includes.
#
#    3) external redirects
#ErrorDocument 402 http://some.other_server.com/subscription_info.html
#  N.B.: Many of the environment variables associated with the original
#  request will *not* be available to such a script.

BrowserMatch "Mozilla/2" nokeepalive
BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
BrowserMatch "RealPlayer 4\.0" force-response-1.0
BrowserMatch "Java/1\.0" force-response-1.0
BrowserMatch "JDK/1\.0" force-response-1.0

<IfModule mod_perl.c>
  Alias /perl/ /var/www/perl/
  <Location /perl>
    SetHandler perl-script
    PerlHandler Apache::Registry
    Options +ExecCGI
  </Location>
</IfModule>

#LoadModule put_module          modules/mod_put.so
#AddModule mod_put.c

#Alias /upload /tmp
#<Location /upload>
#    EnablePut On
#    AuthType Basic
#    AuthName Temporary
#    AuthUserFile /etc/httpd/conf/passwd
#    EnableDelete Off
#    umask 007
#    <Limit PUT>
#       require valid-user
#    </Limit>
#</Location>

<Location /server-status>
    SetHandler server-status
    Order deny,allow
    Deny from all
    Allow from .powerpull.net
</Location>

#<Location /server-info>
#    SetHandler server-info
#    Order deny,allow
#    Deny from all
#    Allow from .your_domain.com
#</Location>

# Allow access to local system documentation from localhost
Alias /doc/ /usr/share/doc/
<Location /doc>
  order deny,allow
  deny from all
  allow from localhost .localdomain
  Options Indexes FollowSymLinks
</Location>

# There have been reports of people trying to abuse an old bug from pre-1.1
# days.  This bug involved a CGI script distributed as a part of Apache.
# By uncommenting these lines you can redirect these attacks to a logging
# script on phf.apache.org.  Or, you can record them yourself, using the
script
# support/phf_abuse_log.cgi.
#
#<Location /cgi-bin/phf*>
#    Deny from all
#    ErrorDocument 403 http://phf.apache.org/phf_abuse_log.cgi
#</Location>

# Proxy Server directives. Uncomment the following lines to
# enable the proxy server:
#<IfModule mod_proxy.c>
#ProxyRequests On
#
#<Directory proxy:*>
#    Order deny,allow
#    Deny from all
#    Allow from .your_domain.com
#</Directory>

# Enable/disable the handling of HTTP/1.1 "Via:" headers.
# ("Full" adds the server version; "Block" removes all outgoing Via:
headers)
# Set to one of: Off | On | Full | Block
#
#ProxyVia On

#CacheRoot "/var/cache/httpd"
#CacheSize 5
#CacheGcInterval 4
#CacheMaxExpire 24
#CacheLastModifiedFactor 0.1
#CacheDefaultExpire 1
#NoCache a_domain.com another_domain.edu joes.garage_sale.com

#</IfModule>

# Added by JSF
#<IfDefine HAVE_SSL>
#Include conf/ssl.conf
#</IfDefine>
Include conf/virtual_hosts.conf
Include conf/mod_perl.conf
# end alteration






More information about the clue-tech mailing list