4 069
contributi
(8 versioni intermedie di uno stesso utente non sono mostrate) | |||
Riga 281: | Riga 281: | ||
</html> | </html> | ||
</pre> | </pre> | ||
salviamo il file e richiamiamolo nel nostro browser: '''http://123.45.67.890/test.php'''. Se tutto è andato per il verso giusto vi troverete davanti a una schermata di riepilogo delle funzionalità abilitate di | salviamo il file e richiamiamolo nel nostro browser: '''http://123.45.67.890/test.php'''. Se tutto è andato per il verso giusto vi troverete davanti a una schermata di riepilogo delle funzionalità abilitate di PHP7. | ||
==Installazione di PHP 5.6== | |||
Potrebbe essere necessario installare una vecchia versione di PHP affiancata a quella ufficiale presente in Stretch, ad esempio perchè alcuni siti presenti sul nostro server non girano correttamente con PHP 7.0. | |||
<br/> | |||
Debian Stretch offre nei repository ufficiali solo la versione 7.0 di PHP, ma possiamo utilizzare i pacchetti .deb messi a disposizione direttamente dal maintainer dei pacchetti PHP di Debian, Ondřej Surý. | |||
<br/> | |||
Aggiungiamo il suo repository al nostro sources.list: | |||
<pre> | |||
# apt-get install apt-transport-https curl | |||
# curl https://packages.sury.org/php/apt.gpg | apt-key add - | |||
# echo 'deb https://packages.sury.org/php/ stretch main' > /etc/apt/sources.list.d/deb.sury.org.list | |||
# apt-get update | |||
</pre> | |||
E installiamo PHP 5.6: | |||
<pre> | |||
# apt-get install php5.6-cli php5.6-fpm | |||
</pre> | |||
Verifichiamo che tutto sia a posto: | |||
<pre> | |||
# php7.0 -v | |||
PHP 7.0.15-1 (cli) | |||
# php5.6 -v | |||
PHP 5.6.30-5+0~20170223133422.27+stretch~1.gbp1ee0cb (cli) | |||
</pre> | |||
La versione predefinita è rimasta la 7.0, come possiamo facilmente constatare: | |||
<pre> | |||
# php -v | |||
PHP 7.0.15-1 (cli) | |||
</pre> | |||
ma possiamo cambiarla in maniera molto veloce: | |||
<pre> | |||
# update-alternatives --config php | |||
</pre> | |||
== Installazione di MySQL == | == Installazione di MySQL == | ||
Riga 370: | Riga 403: | ||
* Individuare gli script PHP che inviano SPAM: [[http://guide.debianizzati.org/index.php/Individuare_gli_script_PHP_che_inviano_SPAM Script PHP che inviano SPAM]] | * Individuare gli script PHP che inviano SPAM: [[http://guide.debianizzati.org/index.php/Individuare_gli_script_PHP_che_inviano_SPAM Script PHP che inviano SPAM]] | ||
Non sono impostazioni necessarie per il corretto funzionamento di Apache, ma sono '''fortemente consigliate'''. | Non sono impostazioni necessarie per il corretto funzionamento di Apache, ma sono '''fortemente consigliate'''. | ||
==Note e changelog== | |||
Da Debian Jessie è stato introdotto Apache 2.4 al posto del 2.2, e anche il sistema di configurazione è cambiato leggermente. | |||
<br/> | |||
Invece della directory <code>/etc/apache2/conf.d/</code> abbiamo <code>/etc/apache2/conf-enabled/</code> che contiene dei link a <code>/etc/apache2/conf-available/</code>. | |||
<br/> | |||
I file di configurazione in <code>/etc/apache2/sites-enabled</code>/ devono terminare con l'estensione <code>.conf</code>. | |||
<br/> | |||
La direttiva <code>NameVirtualHost *:80</code> e analoga per la porta 443 non serve più. | |||
<br/> | |||
Una directory pubblicata tramite Alias deve avere l'opzione <code>Require all granted</code> altrimenti ogni tentativo di accedere al suo contenuto risulta in un errore <code>AH01630: client denied by server configuration</code>. | |||
<br/><br/> | |||
Una delle modifiche classiche da fare è la seguente: | |||
<pre> | |||
# Configuration for Apache 2.2 | |||
Order allow,deny | |||
Allow from all | |||
# Configuration for Apache 2.4 with mod_authz_host. | |||
Require all granted | |||
</pre> | |||
In maniera analoga per negare ogni richiesta: | |||
<pre> | |||
# Configuration for Apache 2.2 | |||
Order deny,allow | |||
Deny from all | |||
# Configuration for Apache 2.4 with mod_authz_host. | |||
Require all denied | |||
</pre> | |||
Un controllo di accesso basato sull'indirizzo IP è fatto in questo modo: | |||
<pre> | |||
Require local | |||
Require ip 127.0.0.0/8 ::1 185.21.73.97 10.0.1.0/24 | |||
</pre> | |||
Un'altro cambiamento non da poco è la direttiva <code>AllowOverride</code>, che adesso ha valore predefinito <code>None</code>. Questo significa ad esempio che tutti i file .htaccess smettono di funzionare! | |||
== Apache2: layout di configurazione == | == Apache2: layout di configurazione == |