Server Setup · 4 min read · Nov 17, 2025
Il Server Perfetto - CentOS 5.6 x86_64 [ISPConfig 2] - Pagina 6
12 Apache2 Con PHP, Ruby, Python, WebDAV
Ora installiamo Apache con PHP (questo è PHP 5.1.6):
yum install php php-devel php-gd php-imap php-ldap php-mysql php-odbc php-pear php-xml php-xmlrpc curl curl-devel perl-libwww-perl ImageMagick libxml2 libxml2-develPoi modifica /etc/httpd/conf/httpd.conf:
vi /etc/httpd/conf/httpd.confe cambia DirectoryIndex in
| [...] DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3 index.pl [...] |
Ora configura il tuo sistema per avviare Apache all’avvio:
chkconfig --levels 235 httpd onAvvia Apache:
/etc/init.d/httpd start12.1 Disabilitare PHP Globalmente
(Se non hai intenzione di installare ISPConfig su questo server, salta questa sezione!)
In ISPConfig configurerai PHP su base per-sito, cioè puoi specificare quale sito può eseguire script PHP e quale no. Questo può funzionare solo se PHP è disabilitato globalmente perché altrimenti tutti i siti web potrebbero eseguire script PHP, indipendentemente da ciò che specifichi in ISPConfig.
Per disabilitare PHP globalmente, modifichiamo /etc/httpd/conf.d/php.conf e commentiamo le righe AddHandler e AddType:
vi /etc/httpd/conf.d/php.conf| # # PHP è un linguaggio di scripting incorporato in HTML che cerca di rendere facile per gli sviluppatori scrivere pagine web generate dinamicamente. # |
Dopo di che riavviamo Apache:
/etc/init.d/httpd restart12.2 Installazione di mod_ruby
Per CentOS 5.6, non è disponibile alcun pacchetto mod_ruby, quindi dobbiamo compilarlo noi stessi. Prima installiamo alcune dipendenze:
yum install httpd-devel ruby ruby-develSuccessivamente scarichiamo e installiamo mod_ruby come segue:
cd /tmp
wget http://modruby.net/archive/mod_ruby-1.3.0.tar.gz
tar zxvf mod_ruby-1.3.0.tar.gz
cd mod_ruby-1.3.0/
./configure.rb –with-apr-includes=/usr/include/apr-1
make
make install
Infine dobbiamo aggiungere il modulo mod_ruby alla configurazione di Apache, quindi creiamo il file /etc/httpd/conf.d/ruby.conf…
vi /etc/httpd/conf.d/ruby.conf| LoadModule ruby_module modules/mod_ruby.so |
… e riavviamo Apache:
/etc/init.d/httpd restart12.3 Installazione di mod_python
Per installare mod_python, eseguiamo semplicemente…
yum install mod_python… e riavviamo Apache successivamente:
/etc/init.d/httpd restart12.4 WebDAV
WebDAV dovrebbe già essere abilitato, ma per controllare questo, apri /etc/httpd/conf/httpd.conf e assicurati che i seguenti tre moduli siano attivi:
vi /etc/httpd/conf/httpd.conf| [...] LoadModule auth_digest_module modules/mod_auth_digest.so [...] LoadModule dav_module modules/mod_dav.so [...] LoadModule dav_fs_module modules/mod_dav_fs.so [...] |
Se devi modificare /etc/httpd/conf/httpd.conf, non dimenticare di riavviare Apache successivamente:
/etc/init.d/httpd restart13 ProFTPd
ISPConfig ha un supporto migliore per proftpd rispetto a vsftpd, quindi rimuoviamo vsftpd:
yum remove vsftpdPoiché CentOS non ha un pacchetto proftpd, dobbiamo compilare Proftpd manualmente:
cd /tmp/
wget –passive-ftp ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.3e.tar.gz
tar xvfz proftpd-1.3.3e.tar.gz
cd proftpd-1.3.3e/
./configure –sysconfdir=/etc
make
make install
cd ..
rm -fr proftpd-1.3.3e*
Il binario proftpd viene installato in /usr/local/sbin, ma ne abbiamo bisogno in /usr/sbin, quindi creiamo un symlink:
ln -s /usr/local/sbin/proftpd /usr/sbin/proftpdOra crea lo script di init /etc/init.d/proftpd:
vi /etc/init.d/proftpd| #!/bin/sh # $Id: proftpd.init,v 1.1 2004/02/26 17:54:30 thias Exp $ # # proftpd Questo script shell si occupa di avviare e fermare # proftpd. # # chkconfig: - 80 30 # description: ProFTPD è un server FTP migliorato con un focus verso \ # semplicità, sicurezza e facilità di configurazione. \ # Presenta una sintassi di configurazione molto simile ad Apache, \ # e un'infrastruttura del server altamente personalizzabile, \ # inclusa la supporto per più server FTP 'virtuali', \ # FTP anonimo e visibilità delle directory basata su permessi. # processname: proftpd # config: /etc/proftp.conf # pidfile: /var/run/proftpd.pid # Libreria di funzioni di origine. . /etc/rc.d/init.d/functions # Configurazione di rete di origine. . /etc/sysconfig/network # Controlla che la rete sia attiva. [ ${NETWORKING} = "no" ] && exit 0 [ -x /usr/sbin/proftpd ] || exit 0 RETVAL=0 prog="proftpd" start() { echo -n "$"Starting $prog: " daemon proftpd RETVAL=$? echo [ $RETVAL -eq 0 ] && touch /var/lock/subsys/proftpd } stop() { echo -n "$"Shutting down $prog: " killproc proftpd RETVAL=$? echo [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/proftpd } # Vedi come siamo stati chiamati. case "$1" in start) start ;; stop) stop ;; status) status proftpd RETVAL=$? ;; restart) stop start ;; condrestart) if [ -f /var/lock/subsys/proftpd ]; then stop start fi ;; reload) echo -n "$"Re-reading $prog configuration: " killproc proftpd -HUP RETVAL=$? echo ;; *) echo "Usage: $prog {start|stop|restart|reload|condrestart|status}" exit 1 esac exit $RETVAL |
Poi rendiamo eseguibile lo script di init:
chmod 755 /etc/init.d/proftpdSuccessivamente apriamo /etc/proftpd.conf e cambiamo il Gruppo in nobody:
vi /etc/proftpd.conf| [...] Group nobody [...] |
Per motivi di sicurezza puoi anche aggiungere le seguenti righe a /etc/proftpd.conf (grazie a Reinaldo Carvalho; ulteriori informazioni possono essere trovate qui: http://proftpd.org/localsite/Userguide/linked/userguide.html):
vi /etc/proftpd.conf| [...] DefaultRoot ~ IdentLookups off ServerIdent on "FTP Server ready." [...] |
Per assicurarti che gli utenti FTP possano utilizzare il comando chmod, commenta la sezione
| [...] # Bar use of SITE CHMOD by default # |
Ora possiamo creare i collegamenti di avvio del sistema per Proftpd:
chkconfig --levels 235 proftpd onE infine avviamo Proftpd:
/etc/init.d/proftpd startRicevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.