LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Software
User Name
Password
Linux - Software This forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.

Notices


Reply
  Search this Thread
Old 12-24-2004, 12:04 PM   #1
BoardinBum
LQ Newbie
 
Registered: Jul 2004
Distribution: Slackware, Ubuntu, DSL
Posts: 21

Rep: Reputation: 15
Help setting up Apache2 on Ubuntu box


I recently decided to take an old 500mhz Compaq, and attempt to make it a file/web server.
I succesfully set up Samba. Now for Apache...
The box is running Ubuntu, and has Apache 2.0.5 running.
As of now, I don't even know where it's looking for the idex.html file or anything. I can get the "Seeing this instead of the website you expected?..." Apache page, so I know it's up and working.
So where's it looking for the website files?
And is it possible to change that directory it looks for the index.html, and other files in to a directory (/home/boardinbum/apache) when that directory is also being shared by Samba? If so, which line(s) do I need to change in this file?

apache2.conf:

# Based upon the NCSA server configuration files originally by Rob McCool.
# Changed extensively for the Debian package by Daniel Stone <daniel@sfarc.net>
# and also by Thom May <thom@debian.org>.

# ServerRoot: The top of the directory tree under which the server's
# configuration, error, and log files are kept.
#
# NOTE! If you intend to place this on an NFS (or otherwise network)
# mounted filesystem then please read the LockFile documentation
# (available at <URL:http://www.apache.org/docs/mod/core.html#lockfile>);
# you will save yourself a lot of trouble.

ServerRoot "/etc/apache2"

# The LockFile directive sets the path to the lockfile used when Apache
# is compiled with either USE_FCNTL_SERIALIZED_ACCEPT or
# USE_FLOCK_SERIALIZED_ACCEPT. This directive should normally be left at
# its default value. The main reason for changing it is if the logs
# directory is NFS mounted, since the lockfile MUST BE STORED ON A LOCAL
# DISK. The PID of the main server process is automatically appended to
# the filename.

LockFile /var/lock/apache2/accept.lock

# PidFile: The file in which the server should record its process
# identification number when it starts.

PidFile /var/run/apache2.pid

# Timeout: The number of seconds before receives and sends time out.

Timeout 300

# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.

KeepAlive On

# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.

MaxKeepAliveRequests 100

# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.

KeepAliveTimeout 15

##
## Server-Pool Size Regulation (MPM specific)
##

# prefork MPM
# StartServers ......... number of server processes to start
# MinSpareServers ...... minimum number of server processes which are kept spare
# MaxSpareServers ...... maximum number of server processes which are kept spare
# MaxClients ........... maximum number of server processes allowed to start
# MaxRequestsPerChild .. maximum number of requests a server process serves
<IfModule prefork.c>
StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxClients 20
MaxRequestsPerChild 0
</IfModule>

# pthread MPM
# StartServers ......... initial number of server processes to start
# MaxClients ........... maximum number of server processes allowed to start
# MinSpareThreads ...... minimum number of worker threads which are kept spare
# MaxSpareThreads ...... maximum number of worker threads which are kept spare
# ThreadsPerChild ...... constant number of worker threads in each server process
# MaxRequestsPerChild .. maximum number of requests a server process serves
<IfModule worker.c>
StartServers 2
MaxClients 150
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxRequestsPerChild 0
</IfModule>

# perchild MPM
# NumServers ........... constant number of server processes
# StartThreads ......... initial number of worker threads in each server process
# MinSpareThreads ...... minimum number of worker threads which are kept spare
# MaxSpareThreads ...... maximum number of worker threads which are kept spare
# MaxThreadsPerChild ... maximum number of worker threads in each server process
# MaxRequestsPerChild .. maximum number of connections per server process (then it dies)
<IfModule perchild.c>
NumServers 5
StartThreads 5
MinSpareThreads 5
MaxSpareThreads 10
MaxThreadsPerChild 20
MaxRequestsPerChild 0
AcceptMutex fcntl
</IfModule>

User www-data
Group www-data

# The following directives define some format nicknames for use with
# a CustomLog directive (see below).
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


# Global error log.
ErrorLog /var/log/apache2/error.log

# Include module configuration:
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf

# Include all the user configurations:
Include /etc/apache2/httpd.conf

# Include ports listing
Include /etc/apache2/ports.conf

# Include generic snippets of statements
Include /etc/apache2/conf.d/[^.#]*

#Let's have some Icons, shall we?
Alias /icons/ "/usr/share/apache2/icons/"
<Directory "/usr/share/apache2/icons">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>

# Set up the default error docs.
#
# Customizable error responses come in three flavors:
# 1) plain text 2) local redirects 3) external redirects
#
# Some examples:
#ErrorDocument 500 "The server made a boo boo."
#ErrorDocument 404 /missing.html
#ErrorDocument 404 "/cgi-bin/missing_handler.pl"
#ErrorDocument 402 http://www.example.com/subscription_info.html
#

#
# Putting this all together, we can Internationalize error responses.
#
# We use Alias to redirect any /error/HTTP_<error>.html.var response to
# our collection of by-error message multi-language collections. We use
# includes to substitute the appropriate text.
#
# You can modify the messages' appearance without changing any of the
# default HTTP_<error>.html.var files by adding the line;
#
# Alias /error/include/ "/your/include/path/"
#
# which allows you to create your own set of files by starting with the
# /usr/local/apache2/error/include/ files and
# copying them to /your/include/path/, even on a per-VirtualHost basis.
#

<IfModule mod_negotiation.c>
<IfModule mod_include.c>
Alias /error/ "/usr/share/apache2/error/"

<Directory "/usr/share/apache2/error">
AllowOverride None
Options IncludesNoExec
AddOutputFilter Includes html
AddHandler type-map var
Order allow,deny
Allow from all
LanguagePriority en es de fr
ForceLanguagePriority Prefer Fallback
</Directory>

ErrorDocument 400 /error/HTTP_BAD_REQUEST.html.var
ErrorDocument 401 /error/HTTP_UNAUTHORIZED.html.var
ErrorDocument 403 /error/HTTP_FORBIDDEN.html.var
ErrorDocument 404 /error/HTTP_NOT_FOUND.html.var
ErrorDocument 405 /error/HTTP_METHOD_NOT_ALLOWED.html.var
ErrorDocument 408 /error/HTTP_REQUEST_TIME_OUT.html.var
ErrorDocument 410 /error/HTTP_GONE.html.var
ErrorDocument 411 /error/HTTP_LENGTH_REQUIRED.html.var
ErrorDocument 412 /error/HTTP_PRECONDITION_FAILED.html.var
ErrorDocument 413 /error/HTTP_REQUEST_ENTITY_TOO_LARGE.html.var
ErrorDocument 414 /error/HTTP_REQUEST_URI_TOO_LARGE.html.var
ErrorDocument 415 /error/HTTP_SERVICE_UNAVAILABLE.html.var
ErrorDocument 500 /error/HTTP_INTERNAL_SERVER_ERROR.html.var
ErrorDocument 501 /error/HTTP_NOT_IMPLEMENTED.html.var
ErrorDocument 502 /error/HTTP_BAD_GATEWAY.html.var
ErrorDocument 503 /error/HTTP_SERVICE_UNAVAILABLE.html.var
ErrorDocument 506 /error/HTTP_VARIANT_ALSO_VARIES.html.var

</IfModule>
</IfModule>

DirectoryIndex index.html index.cgi index.pl index.php index.xhtml

# UserDir is now a module
#UserDir public_html
#UserDir disabled root

#<Directory /home/*/public_html>
# AllowOverride FileInfo AuthConfig Limit
# Options Indexes SymLinksIfOwnerMatch IncludesNoExec
#</Directory>

AccessFileName .htaccess

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

UseCanonicalName Off

TypesConfig /etc/mime.types
DefaultType text/plain

HostnameLookups Off

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/*

# This really should be .jpg.

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^^


# This is from Matty J's patch. Anyone want to make the icons?
#AddIcon /icons/dirsymlink.jpg ^^SYMDIR^^
#AddIcon /icons/symlink.jpg ^^SYMLINK^^

DefaultIcon /icons/unknown.gif

ReadmeName README.html
HeaderName HEADER.html

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

AddEncoding x-compress Z
AddEncoding x-gzip gz tgz

AddLanguage da .dk
AddLanguage nl .nl
AddLanguage en .en
AddLanguage et .et
AddLanguage fr .fr
AddLanguage de .de
AddLanguage el .el
AddLanguage it .it
AddLanguage ja .ja
AddLanguage pl .po
AddLanguage ko .ko
AddLanguage pt .pt
AddLanguage no .no
AddLanguage pt-br .pt-br
AddLanguage ltz .ltz
AddLanguage ca .ca
AddLanguage es .es
AddLanguage sv .se
AddLanguage cz .cz
AddLanguage ru .ru
AddLanguage tw .tw
AddLanguage zh-tw .tw

LanguagePriority en da nl et fr de el it ja ko no pl pt pt-br ltz ca es sv tw


#AddDefaultCharset ISO-8859-1

AddCharset ISO-8859-1 .iso8859-1 .latin1
AddCharset ISO-8859-2 .iso8859-2 .latin2 .cen
AddCharset ISO-8859-3 .iso8859-3 .latin3
AddCharset ISO-8859-4 .iso8859-4 .latin4
AddCharset ISO-8859-5 .iso8859-5 .latin5 .cyr .iso-ru
AddCharset ISO-8859-6 .iso8859-6 .latin6 .arb
AddCharset ISO-8859-7 .iso8859-7 .latin7 .grk
AddCharset ISO-8859-8 .iso8859-8 .latin8 .heb
AddCharset ISO-8859-9 .iso8859-9 .latin9 .trk
AddCharset ISO-2022-JP .iso2022-jp .jis
AddCharset ISO-2022-KR .iso2022-kr .kis
AddCharset ISO-2022-CN .iso2022-cn .cis
AddCharset Big5 .Big5 .big5
# For russian, more than one charset is used (depends on client, mostly):
AddCharset WINDOWS-1251 .cp-1251 .win-1251
AddCharset CP866 .cp866
AddCharset KOI8-r .koi8-r .koi8-ru
AddCharset KOI8-ru .koi8-uk .ua
AddCharset ISO-10646-UCS-2 .ucs2
AddCharset ISO-10646-UCS-4 .ucs4
AddCharset UTF-8 .utf8

AddCharset GB2312 .gb2312 .gb
AddCharset utf-7 .utf7
AddCharset utf-8 .utf8
AddCharset big5 .big5 .b5
AddCharset EUC-TW .euc-tw
AddCharset EUC-JP .euc-jp
AddCharset EUC-KR .euc-kr
AddCharset shift_jis .sjis

#AddType application/x-httpd-php .php
#AddType application/x-httpd-php-source .phps

AddType application/x-tar .tgz

# To use CGI scripts outside /cgi-bin/:
#
#AddHandler cgi-script .cgi

# To use server-parsed HTML files
#
<FilesMatch "\.shtml(\..+)?$">
SetOutputFilter INCLUDES
</FilesMatch>

# If you wish to use server-parsed imagemap files, use
#
#AddHandler imap-file map

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

#
# The following directive disables redirects on non-GET requests for
# a directory that does not include the trailing slash. This fixes a
# problem with Microsoft WebFolders which does not appropriately handle
# redirects for folders with DAV methods.
#

BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
BrowserMatch "^WebDrive" redirect-carefully
BrowserMatch "^gnome-vfs" redirect-carefully
BrowserMatch "^WebDAVFS/1.[012]" redirect-carefully

# Allow server status reports, with the URL of http://servername/server-status
# Change the ".your_domain.com" to match your domain to enable.
#
#<Location /server-status>
# SetHandler server-status
# Order deny,allow
# Deny from all
# Allow from .your_domain.com
#</Location>

# Allow remote server configuration reports, with the URL of
# http://servername/server-info (requires that mod_info.c be loaded).
# Change the ".your_domain.com" to match your domain to enable.
#
#<Location /server-info>
# SetHandler server-info
# Order deny,allow
# Deny from all
# Allow from .your_domain.com
#</Location>

# Include the virtual host configurations:
Include /etc/apache2/sites-enabled/[^.#]*
 
Old 12-24-2004, 12:22 PM   #2
williew
Newbie
 
Registered: Dec 2004
Distribution: Debian GNU/Linux Sarge 3.1 ("Testing")
Posts: 29

Rep: Reputation: 15
What you need to add is a DocumentRoot statement to your httpd.conf file. I can't seem to find one in the configuration you posted above. Add a DocumentRoot anywhere to your httpd.conf file. By default, apache will look to /your/install/prefix/htdocs for files. If you are using a package (deb, rpm) this may be different, and you should contact the package vendor to find out where your HTML documents are being looked for.

Format for DocumentRoot:
DocumentRoot "/location/to/look/for/documents"

Regards,
Willie.
 
Old 12-24-2004, 12:32 PM   #3
BoardinBum
LQ Newbie
 
Registered: Jul 2004
Distribution: Slackware, Ubuntu, DSL
Posts: 21

Original Poster
Rep: Reputation: 15
I tried adding a "DocumentRoot "..."" But it's still the same "Seeing this instead of the website you expected?..." Page that comes up.
 
Old 12-24-2004, 12:33 PM   #4
williew
Newbie
 
Registered: Dec 2004
Distribution: Debian GNU/Linux Sarge 3.1 ("Testing")
Posts: 29

Rep: Reputation: 15
Did you restart the apache server?

Code:
apachectl restart
Regards,
Willie.
 
Old 12-24-2004, 12:34 PM   #5
BoardinBum
LQ Newbie
 
Registered: Jul 2004
Distribution: Slackware, Ubuntu, DSL
Posts: 21

Original Poster
Rep: Reputation: 15
Yeah.
I used "apache2 -k restart" though.
 
Old 12-24-2004, 12:37 PM   #6
williew
Newbie
 
Registered: Dec 2004
Distribution: Debian GNU/Linux Sarge 3.1 ("Testing")
Posts: 29

Rep: Reputation: 15
That works too.

What method of installing apache did you use? Manual install, or package (deb, rpm, etc)?

Is there an /etc/apache2/htdocs directory? (or anything similar such as html, public_html, etc?)

Regards,
Willie.

Last edited by williew; 12-24-2004 at 12:38 PM.
 
Old 12-24-2004, 12:42 PM   #7
BoardinBum
LQ Newbie
 
Registered: Jul 2004
Distribution: Slackware, Ubuntu, DSL
Posts: 21

Original Poster
Rep: Reputation: 15
I used Synaptic. So I'd imagine a .deb
And no there isn't.
This is what the apache2 directory looks like. Italics mean directory.
root@ubuntu:/etc/apache2 # ls
apache2.conf httpd.conf mods-enabled sites-available
apache2.conf~ magic ports.conf sites-enabled
conf.d mods-available README ssl

And when I opened httpd.conf, it just said "for backwards compatible reasons only"
So apache2.conf is the actual config file. It just looks to see if you've put any important code in httpd.conf either.
 
Old 12-24-2004, 12:48 PM   #8
williew
Newbie
 
Registered: Dec 2004
Distribution: Debian GNU/Linux Sarge 3.1 ("Testing")
Posts: 29

Rep: Reputation: 15
Try to do these from shell:

Code:
locate htodcs
locate public_html
If there is a public_html directory on your system for apache, or a htdocs directory, this will surely find it.

As I mentioned above, you may want to contact your package vendors, as they will have more specific information on this, because all packages install differently.

Regards,
Willie.
 
Old 12-24-2004, 12:52 PM   #9
BoardinBum
LQ Newbie
 
Registered: Jul 2004
Distribution: Slackware, Ubuntu, DSL
Posts: 21

Original Poster
Rep: Reputation: 15
root@ubuntu:/etc/apache2 # locate htdocs
warning: locate: could not open database: /var/lib/slocate/slocate.db: No such file or directory
root@ubuntu:/etc/apache2 # locate public_html
warning: locate: could not open database: /var/lib/slocate/slocate.db: No such file or directory
 
Old 12-24-2004, 12:56 PM   #10
williew
Newbie
 
Registered: Dec 2004
Distribution: Debian GNU/Linux Sarge 3.1 ("Testing")
Posts: 29

Rep: Reputation: 15
run updatedb first (this may take a few minutes).

Regards,
Willie.
 
Old 12-24-2004, 01:30 PM   #11
BoardinBum
LQ Newbie
 
Registered: Jul 2004
Distribution: Slackware, Ubuntu, DSL
Posts: 21

Original Poster
Rep: Reputation: 15
Alright, did that. Located htdocs and public_html. Now what?
 
Old 12-24-2004, 01:38 PM   #12
williew
Newbie
 
Registered: Dec 2004
Distribution: Debian GNU/Linux Sarge 3.1 ("Testing")
Posts: 29

Rep: Reputation: 15
Well, did 'locate' return any directories? If so, switch (cd) to them and then try 'ls' from each one. Try to place an index.html file in each one and see if you can find out which one is the right one.

Regards,
Willie.
 
Old 12-24-2004, 01:42 PM   #13
BoardinBum
LQ Newbie
 
Registered: Jul 2004
Distribution: Slackware, Ubuntu, DSL
Posts: 21

Original Poster
Rep: Reputation: 15
Well it didn't tell me where they are or anything...
root@ubuntu:~ # locate htdocs
root@ubuntu:~ # locate public_html
 
Old 12-24-2004, 01:47 PM   #14
williew
Newbie
 
Registered: Dec 2004
Distribution: Debian GNU/Linux Sarge 3.1 ("Testing")
Posts: 29

Rep: Reputation: 15
Oh, then you may not have those directories. I'm afraid you'll have to wait for someone who might know more about the package you used to come along. Sorry I couldn't be of any help.

Regards,
WIllie.
 
Old 01-03-2005, 02:11 PM   #15
chicken_moo
LQ Newbie
 
Registered: Jan 2005
Posts: 1

Rep: Reputation: 0
Try looking in /var/www

I just installed Debian on one of my boxes and that seems to be the default folder for apache2 on debian based systems. Not sure for ubuntu, but its as good a guess as any.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Problems upgrading MySQL on Ubuntu, with Apache2/PHP4 peruvianllama Linux - Software 0 08-16-2005 09:27 AM
ubuntu box as router tnadenichek Linux - Networking 6 05-09-2005 02:33 AM
How do I change document root in apache2 in Ubuntu? leemoreau Linux - Networking 4 03-30-2005 06:18 AM
Apache1 & Apache2 - How do I get them both working on the same box? neocookie Linux - Software 3 09-24-2004 02:58 AM
Setting up Apache2 in Mandrake 10 prodigal Mandriva 4 07-21-2004 04:58 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Software

All times are GMT -5. The time now is 04:27 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration