Apache è un server web, Vsftpd è invece un server ftp.
Servono a chi vuole pubblicare pagine web e files su internet.
Apache può anche essere utilissimo semplicemente per provare le vostre pagine web, prima di pubblicarle nel vostro spazio web su internet.
Apache, ma soprattutto Vsftpd possono essere usati per scambiare grossi file attraverso internet, da un pc ad un altro.
Apache2 ha, rispetto ad Apache alcune migliorie, e vi dovrebbe bastare sapere che ha anche un modo diverso di gestire la configurazione.
Per farsi un server completo apache, bisogna installare da Synaptic i seguenti pacchetti:
Â
apache2-mpm-prefork: il webserver
mysql-server: pacchetto riguardante mysql
libapache2-mod-php5: modulo PHP per Apache
php5-mysql: estensione MySQL per PHP
php5-gd: per installare le librerie "gd"
Â
sudo /etc/init.d/apache2 stop | Ferma apache |
sudo /etc/init.d/apache2 start | Fa partire apache |
sudo /etc/init.d/apache2 restart | Fa ripartire apache |
sudo gedit /etc/apache2/apache2.conf | apache2.conf è il file di configurazione di apache2. Molte opzioni in questo file di testo sono "commentate" (precedute dal simbolo "#").
Ricordatevi che qualsiasi modifica voi facciate al file di configurazione, dopo dovrete riavviare apache2 facendo: Â sudo /etc/init.d/apache2 restart
Â
Un esempio di modifica è aggiungere queste righe ad apache2.conf:
ExtendedStatus On
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from localhost
</Location>
Aggiungendo le righe di cui sopra, se nella URL del vostro browser scrivete http://localhost/server-status potete ottenere numerose informazioni su chi è connesso al vostro server in questo momento (facendo http://localhost/server-status?refresh=5 la pagina si riaggiorna ogni 5 secondi).
La direttiva ExtendedStatus quando attivata con l'argomento On permette di ottenere un maggior numero di informazioni. |
sudo gedit /etc/php5/apache2/php.ini | Nel caso abbiate installato php5 con apache2, questo è il file di configurazione di php5 |
sudo gedit /etc/apache2/sites-available/default | Se vi dovesse interessare abilitare il mod_rewrite sul vostro server apache2, prima di tutto scrivete su shell la riga:
 sudo a2enmod rewrite
Â
Quindi modificate con un editor di testo, tipo gedit, il file /etc/apache2/sites-available/default. Qui cercate le righe:
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride none
Order allow,deny
allow from all
E sostituite AllowOverride none con AllowOverride all.
Quindi riavviate apache con sudo /etc/init.d/apache2 restart.
Dovrebbe essere così installato il supporto a mod_rewrite e alle regole del file .htaccess.
|
Una volta installato
apache2, potrete accedere al vostro server web scrivendo
http://localhost .
Dall'esterno, la gente può accedere al vostro server web (e così al vostro sito!) impostando
http://Vostro_ip_pubblico .
Ma come fare a sapere quale è il vostro indirizzo ip pubblico? Vi sono migliaia di siti in rete che servono apposta per dirvi quale è il vostro "
indirizzo ip".
Uno di questi siti è
http://whatismyip.com.
Tutti i computer connessi in rete hanno un indirizzo ip, anche il vostro, e potrebbe essere un indirizzo ip
fisso, o che cambia ogni volta che accendete il vostro pc (ip "
dinamico").
Attenzione: voi stessi non potete nel vostro browser fare
http://Vostro_ip_pubblico ed accedere nel vostro stesso pc.
Se volete fare una prova del genere, servitevi di siti tipo
http://anonymouse.org per "fingervi" utenti "esterni" al vostro pc.
Non funziona? Dall'esterno non riescono ad accedere al vostro sito? Se fate
http://localhost invece riuscite ad accedere nel vostro sito?
Questo succede perchè Apache si apre all'esterno attraverso la
porta 80. Assicuratevi che questa porta sia aperta.
Per fare questo prima di tutto su shell eseguite il comando "
ifconfig", che eseguito senza opzioni vi elenca tutte le interfacce di rete nel vostro pc.
Eseguendo
ifconfig otterrete le impostazioni di "
eth0" (o "eth1" o simile), "
lo" e magari anche altro.
"
eth0" (o "eth1" o simile) è la vostra scheda di rete.
"
lo" è la "interfaccia logica" (detta anche "interfaccia di loopback"), che viene usata per le configurazioni locali (normalmente ha valore impostato a
127.0.0.1).
Quello che ci interessa, è l'indirizzo indicato in
eth0 (o simile), che è qualcosa tipo
192.168.1.3 o molto simile.
Questo è l'indirizzo che dovrete usare nelle impostazioni del vostro router per "NATtare" la porta 80 (cercate nel manuale del vostro router come si creano le regole "NAT").
* * *
Se dalla url richiamate una cartella del vostro server apache2, facendo tipo: "http://localhost/nome_cartella" apache potrebbe mostrarvi a video una lista di tutti i file e le sottocartelle (funzione "
directory listing"), questo può darvi dei problemi di sicurezza se vi interessa proteggere il contenuto di quei file e non volete che nessuno li scarichi.
Questo problema va risolto agendo su un file di configurazione di apache2,
etc/apache2/sites-enabled/000-default (prima di modificarlo
fatevene sempre una copia di riserva, e dopo ogni modifica assicuratevi che, se usate htaccess, il reindirizzamento funzioni ancora) , oppure va risolto mediante .htaccess, oppure ancora, la via più rapida e indolore, piazzate un file index.html vuoto all'interno dentro ogni cartella che volete proteggere.
* * *
Per quanto riguarda invece il server ftp "
vsftpd" i comandi piu importanti sono:
/etc/init.d/vsftpd stop | Ferma vsftpd |
/etc/init.d/vsftpd start | Fa partire vsftpd |
/etc/init.d/vsftpd restart | Fa ripartire vsftpd |
gedit vsftpd.conf | Modificare il file di configurazione di vsftpd |
Mentre per
apache per comunicare con l'esterno dovete aprire la
porta 80, per
vsftpd è necessario aprire le
porte 20 e 21.
Torna al menù principale della "Guida su Linux"
Eccellente!! Le info su "server-status" mimancavano proprio!
Grande! Grazie