Apache
From Alessandro's Wiki
- Potente server web multipiattaforma
Configurazione
Impostare ServerName!
Bandwidth
wget http://bwmod.sourceforge.net/files/mod_bw-0.7.tgz tar zxvf mod_bw-0.7.tgz cd mod_bw apxs2 -i -a -c mod_bw.c
Direcoty Indexes
Per ingrandire la colonna del nome del file:
IndexOptions NameWidth=*
Aggiungere un alias per esportare una directory non nella root www:
Alias /_bin "/ciao/_linux_bin/" <Directory "/ciao/_linux_bin/"> Options Indexes MultiViews AllowOverride None Order allow,deny Allow from all </Directory>
Gentoo
- vado diretto alla versione 2:
- file di configurazione;
/etc/apache2/httpd.conf
- Directory del web default:
/var/www/localhost/htdocs
- Installarlo:
emerge -pvtD apache
controllare le USE flags che ci servono e poi
emerge apache
Fedora
- file di configurazione;
/etc/httpd/conf/httpd.conf
- Directori del web default:
/var/www/html/
- Installarlo
yum install httpd
Proxy
- directives to have into httpd.conf or a virtual host configuration file
Reverse Proxy
ProxyPass /foo http://foo.example.com/bar ProxyPassReverse /foo http://foo.example.com/bar
Forward Proxy
ProxyRequests On ProxyVia On
<Proxy *> Order deny,allow Deny from all Allow from internal.example.com </Proxy>
SSL VirtualHost
- using Gentoo distribution.
- enable ssl use flag for apache package
- edit default virtual host for a listening interface and port:
"Listen [::]:443" or "Listen 0.0.0.0:443" or Listen 192.168.82.82:443
- we want name based virtual hosts
NameVirtualHost *:443
Generating certificate
- replace the "server" name with your domain name of your website.
SRVname=server cd /etc/ssl/apache2 openssl genrsa 2048 > $SRVname.key openssl req -new -x509 -nodes -sha1 -days 365 -key $SRVname.key > $SRVname.crt
- Repeat the last step as many virtual hosts you have to serve under an ssl connection, remember to change the SRVname variable in the code:
Virtual host configuration
- example of a basic ssl virtual host:
<VirtualHost *:80> ServerName mysslvirtualhost.example.com ServerAlias mysslvirtualhost Redirect permanent / https://mysslvirtualhost.example.com/ </VirtualHost> <VirtualHost *:443> DirectoryIndex index.php # SSL SSLEngine on SSLCertificateFile /etc/ssl/apache2/server-gallerie.crt SSLCertificateKeyFile /etc/ssl/apache2/server-gallerie.key ServerName mysslvirtualhost.example.com ServerAlias mysslvirtualhost SSLOptions StrictRequire SSLProtocol all -SSLv2 # DocumentRoot "/var/www/mysslvirtualhost/htdocs" <Directory "/var/www/mysslvirtualhost/htdocs"> SSLRequireSSL AllowOverride All Order Deny,Allow Allow from All </Directory> CustomLog /var/log/apache2/mysslvirtualhost.log combined ErrorLog /var/log/apache2/mysslvirtualhost_error.log LogLevel warn </VirtualHost>