Autore: Fabio Di Matteo
Ultima revisione: 22/02/2022 - 10:20
Anche in php e apache è possibile ottenere delle rotte personalizzate. Ecco come.
Per rotte prsonalizzate intendiamo qualcosa come per esempio https://www.miosito.it/homepage .
Assicuriamoci che nel file di configurazione principale di Apache (di solito /etc/httpd/htppd.conf, oppure /etc/apache2/apache2.conf) sia abilitata la direttiva per l'override delle impostazioni attraverso i file .htaccess .
... AccessFileName .htaccess ...
Abilitiamo il nostro Virtual host ad accettare le direttive dai file .htaccess. Andiamo nel file della configurazione del nostro virtual host e aggiungiamo quanto segue, avendo cura di scrivere il percorso giusto delle nostre cartelle:
<VirtualHost> ... <Directory /var/www/html> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> </VirtualHost>
In seguito inseriremo nella root del nostro progetto il file .htaccess :
RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.+)$ /PHP/routes/index.php [QSA,L]
Attenzione ai percorsi. Ovviamente devono corrispondere al vostro index.php sulla root del progetto. In pratica stiamo redirigendo tutto il traffico http sul file index.php. Dunque /PHP/routes/ è la cartella dove ho messo il mio progetto.
index.php
<?php $request = $_SERVER['REQUEST_URI']; switch ($request) { case '/PHP/routes/' : require __DIR__ . '/rotte/home.php'; break; case '/PHP/routes/info' : require __DIR__ . '/rotte/phpinfo.php'; break; case '/PHP/routes/fml': header('Location: https://www.freemedialab.org/'); break; default: http_response_code(404); require __DIR__ . '/rotte/404.php'; break; } ?>
Il nostro wiki installa solamente cookie tecnici necessari al funzionamento della piattaforma "Dokuwiki". Niente analitics, statistiche, tracciamenti o altro.