You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by James Porritt <ja...@is.bbc.co.uk> on 2006/04/13 16:50:47 UTC
mod_echo problem on Solaris
Hi,
I've got a problem with getting mod_echo to work on Solaris. Using
VirtualHost I manage to get it listening on a particular port, but
when I try and connect, the connection is accepted, but seems to get
disconnected straight away. I've tried running the same Apache
configuration under Linux, and it seems to work there. I found a module
called mod_daytime and compiled that. Obviously it is designed to connect,
output and disconnect and that seemed to work ok on both platforms, which
leads me to believe that the configuration is right and that it's Apache
at fault somewhere.
Can someone help me diagnose what the problem is, or if they have come
across the issue before? I'd like to write a protocol module, and need to
get this working before I can attempt it.
The apache was built thus:
Server version: Apache/2.0.55
Server built: Mar 10 2006 13:35:22
Server's Module Magic Number: 20020903:11
Architecture: 32-bit
Server compiled with....
-D APACHE_MPM_DIR="server/mpm/worker"
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
-D APR_USE_FCNTL_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D HTTPD_ROOT="/usr/local/apache2"
-D SUEXEC_BIN="/usr/local/apache2/bin/suexec"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="conf/mime.types"
-D SERVER_CONFIG_FILE="conf/httpd.conf"
It was built on Solaris 8 and run on Solaris 9
and the config is:
ServerRoot "/cache/packages/apache2/apache-2.0.55-v8plus/usr/local/apache2"
LockFile /cache/packages/apache2/apache-2.0.55-v8plus/var/httpd/accept.lock
ScoreBoardFile /cache/packages/apache2/apache-2.0.55-v8plus/var/httpd/apache_runtime_status
PidFile /cache/packages/apache2/apache-2.0.55-v8plus/var/httpd/apache2.pid
Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15
StartServers 2
MaxClients 150
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxRequestsPerChild 0
LoadModule access_module modules/mod_access.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule mime_module modules/mod_mime.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule dir_module modules/mod_dir.so
LoadModule alias_module modules/mod_alias.so
LoadModule echo_module modules/mod_echo.so
User nobody
Group #-1
ServerAdmin you@example.com
UseCanonicalName Off
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory "/cache/packages/apache2/apache-2.0.55-v8plus/htdocs">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
DirectoryIndex index.html index.html.var
AccessFileName .htaccess
<Files ~ "^\.ht">
Order allow,deny
Deny from all
</Files>
TypesConfig conf/mime.types
DefaultType text/plain
HostnameLookups Off
ErrorLog /cache/packages/apache2/apache-2.0.55-v8plus/var/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 /cache/packages/apache2/apache-2.0.55-v8plus/var/httpd/access_log common
ServerTokens Full
ServerSignature On
Alias /icons/ "/cache/packages/apache2/apache-2.0.55-v8plus/icons/"
<Directory "/cache/packages/apache2/apache-2.0.55-v8plus/icons">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
IndexOptions FancyIndexing VersionSort
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
ReadmeName README.html
HeaderName HEADER.html
IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddHandler type-map var
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
BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
BrowserMatch "^WebDrive" redirect-carefully
BrowserMatch "^WebDAVFS/1.[012]" redirect-carefully
BrowserMatch "^gnome-vfs" redirect-carefully
Listen 8080
<VirtualHost *:8080>
DocumentRoot "/home/jamesp/www"
</VirtualHost>
Listen 8090
NameVirtualHost *:8090
<VirtualHost *:8090>
ProtocolEcho On
</VirtualHost>
--
James Porritt, Senior Developer, Internet Operations
Operation Related Services, Siemens Business Services Ltd
This email contains confidential information and is for the exclusive use
of the addressee(s). If you are not the addressee, then any distribution,
copying or use of this email is prohibited. If received in error, please
advise the sender and delete/destroy it immediately. We accept no liability
for any loss or damage suffered by any person arising from use of this email.
Siemens Business Services Limited
Registered No: 1203466 England
Registered Office: Siemens House, Oldbury, Bracknell, Berkshire, RG12 8FZ
Re: mod_echo problem on Solaris
Posted by "William A. Rowe, Jr." <wr...@rowe-clan.net>.
It's a known bug of 2.0.55 and prior (and 2.2.0? Unsure.)
It's fixed in head and the coming release of 2.2, and probably 2.0 as well
although I have to look at my notes if the backport was committed.
The set-original-timeout was handled in the net_time HTTP-style filter.
This was rather bogus when you consider that should be handled up front,
even before the request connection is completed. That's why you are seeing
the behavior.
James Porritt wrote:
> Hi,
> I've got a problem with getting mod_echo to work on Solaris. Using
> VirtualHost I manage to get it listening on a particular port, but
> when I try and connect, the connection is accepted, but seems to get
> disconnected straight away. I've tried running the same Apache
> configuration under Linux, and it seems to work there. I found a module
> called mod_daytime and compiled that. Obviously it is designed to connect,
> output and disconnect and that seemed to work ok on both platforms, which
> leads me to believe that the configuration is right and that it's Apache
> at fault somewhere.
>
> Can someone help me diagnose what the problem is, or if they have come
> across the issue before? I'd like to write a protocol module, and need to
> get this working before I can attempt it.
>
> The apache was built thus:
>
> Server version: Apache/2.0.55
> Server built: Mar 10 2006 13:35:22
> Server's Module Magic Number: 20020903:11
> Architecture: 32-bit
> Server compiled with....
> -D APACHE_MPM_DIR="server/mpm/worker"
> -D APR_HAS_SENDFILE
> -D APR_HAS_MMAP
> -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
> -D APR_USE_FCNTL_SERIALIZE
> -D APR_USE_PTHREAD_SERIALIZE
> -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
> -D APR_HAS_OTHER_CHILD
> -D AP_HAVE_RELIABLE_PIPED_LOGS
> -D HTTPD_ROOT="/usr/local/apache2"
> -D SUEXEC_BIN="/usr/local/apache2/bin/suexec"
> -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
> -D DEFAULT_ERRORLOG="logs/error_log"
> -D AP_TYPES_CONFIG_FILE="conf/mime.types"
> -D SERVER_CONFIG_FILE="conf/httpd.conf"
>
> It was built on Solaris 8 and run on Solaris 9
>
> and the config is:
>
> ServerRoot "/cache/packages/apache2/apache-2.0.55-v8plus/usr/local/apache2"
> LockFile /cache/packages/apache2/apache-2.0.55-v8plus/var/httpd/accept.lock
> ScoreBoardFile /cache/packages/apache2/apache-2.0.55-v8plus/var/httpd/apache_runtime_status
> PidFile /cache/packages/apache2/apache-2.0.55-v8plus/var/httpd/apache2.pid
>
> Timeout 300
>
> KeepAlive On
>
> MaxKeepAliveRequests 100
>
> KeepAliveTimeout 15
>
> StartServers 2
> MaxClients 150
> MinSpareThreads 25
> MaxSpareThreads 75
> ThreadsPerChild 25
> MaxRequestsPerChild 0
>
> LoadModule access_module modules/mod_access.so
> LoadModule log_config_module modules/mod_log_config.so
> LoadModule setenvif_module modules/mod_setenvif.so
> LoadModule mime_module modules/mod_mime.so
> LoadModule autoindex_module modules/mod_autoindex.so
> LoadModule negotiation_module modules/mod_negotiation.so
> LoadModule dir_module modules/mod_dir.so
> LoadModule alias_module modules/mod_alias.so
> LoadModule echo_module modules/mod_echo.so
>
> User nobody
> Group #-1
>
> ServerAdmin you@example.com
>
> UseCanonicalName Off
>
> <Directory />
> Options FollowSymLinks
> AllowOverride None
> </Directory>
>
> <Directory "/cache/packages/apache2/apache-2.0.55-v8plus/htdocs">
> Options Indexes FollowSymLinks
> AllowOverride None
> Order allow,deny
> Allow from all
> </Directory>
>
> DirectoryIndex index.html index.html.var
>
> AccessFileName .htaccess
>
> <Files ~ "^\.ht">
> Order allow,deny
> Deny from all
> </Files>
>
> TypesConfig conf/mime.types
>
> DefaultType text/plain
>
> HostnameLookups Off
>
> ErrorLog /cache/packages/apache2/apache-2.0.55-v8plus/var/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 /cache/packages/apache2/apache-2.0.55-v8plus/var/httpd/access_log common
>
> ServerTokens Full
>
> ServerSignature On
>
> Alias /icons/ "/cache/packages/apache2/apache-2.0.55-v8plus/icons/"
>
> <Directory "/cache/packages/apache2/apache-2.0.55-v8plus/icons">
> Options Indexes MultiViews
> AllowOverride None
> Order allow,deny
> Allow from all
> </Directory>
>
> IndexOptions FancyIndexing VersionSort
>
> 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
>
> ReadmeName README.html
> HeaderName HEADER.html
>
> IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
>
> AddType application/x-compress .Z
> AddType application/x-gzip .gz .tgz
>
> AddHandler type-map var
>
> 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
>
> BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
> BrowserMatch "^WebDrive" redirect-carefully
> BrowserMatch "^WebDAVFS/1.[012]" redirect-carefully
> BrowserMatch "^gnome-vfs" redirect-carefully
>
> Listen 8080
> <VirtualHost *:8080>
> DocumentRoot "/home/jamesp/www"
> </VirtualHost>
>
> Listen 8090
> NameVirtualHost *:8090
> <VirtualHost *:8090>
> ProtocolEcho On
> </VirtualHost>
>
>