Apache

From Linuxintro
Revision as of 12:49, 26 December 2011 by imported>ThorstenStaerk (→‎Proxy)

Apache is a popular http daemon. In other words it is the software for web servers.

WebDAV under Apache2

With Apache2, the DAV module is already included. You will need to activate the two needed modules dav_fs and dav using a2enmod. Afterwards, restart apache using

/etc/init.d/apache2 force-restart

In /etc/apache2/mods-available/dav_fs.conf you should find something like:

DAVLockDB /var/lock/apache2/DAVLock

The user-account Apache is running under (www or www-data) needs read-and write privileges in this folder.

Enter into /etc/apache2/apache2.conf:

Alias /daten /var/data
<Directory /var/data/>
DAV On
ForceType text/plain
AuthType Basic 
AuthName "WebDAV Daten" 
AuthUserFile /etc/apache2/htpasswd 
Require valid-user 
</Directory>

Create "/var/data" and issue

chown www-data:www-data /var/data

Create the FIRST user with:

htpasswd -c /etc/apache2/htpasswd benutzername

For further users, leave out the -c (create).

switch off Apache - Directory-Listing

Remove

Indexes 

from the options, then the content of the folders will no longer be shown.

Alias

An alias allows you to point a URL to a file like this:

Alias /skins /srv/www/htdocs/skins

Imagine we have a home page www.myhomepage.com and have a mediawiki running on it. The URL http://myhomepage.com/skins would now be processed by mediawiki. But we want it to contain pure files. So we make this alias.

Proxy

You want to store a user list with passwords in /etc/apache2/.htpasswd.

root@linuxintro:/etc/apache2/mods-enabled# cat proxy.conf 
<IfModule mod_proxy.c>
        #turning ProxyRequests on and allowing proxying from all may allow
        #spammers to use your proxy to send email.

        ProxyRequests Off

        <Proxy *>
                AddDefaultCharset off
                AuthUserFile /etc/apache2/.htpasswd
                AuthName Wuhuuu
                AuthType Basic
                require valid-user
                Order deny,allow
                Allow from all
                #Deny from all
                #Allow from .example.com
        </Proxy>

        # 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
</IfModule>