Guida al file htaccess per il tuo sito WordPress – Esistono moltissimi fattori che ti permettono di personalizzare il tuo sito web, per esempio con Xlogic Hosting è possibile gestire le versioni PHP ed i relativi parametri direttamente dal miglior pannello di controllo presente sul mercato, cPanel Hosting.
Se non conosci cPanel lo puoi testare gratuitamente senza il bisogno di iscriverti o di lasciare i tuoi dati attraverso questa pagina: Demo cPanel
E’ possibile effettuare moltissime modifiche da cPanel WordPress, ad esempio puoi aumentare il limite di upload del sito web, il valore php Memory Limit, il valore Post Max Size ma ci sono delle operazioni che non possono essere effettuate direttamente da cPanel ma è necessario utilizzare un altro file molto importante se non indispensabile, mi riferisco al htaccess file.
Indice dei contenuti file .htaccess
1. Che cos’è il file .htaccess
2. Come visualizzare il file .htaccess
3. Come creare il file .htaccess WordPress
4. .htaccess WordPress – rendi sicuro il tuo sito
- Impedisci di scoprire il nome utente di WordPress
- Proteggi l’area di login di WordPress
- Autorizza determinati IP per accedere nel backend di WordPress
- Impedisci l’introduzione e l’esecuzione dei files .php
- Proteggi i files importanti di WordPress
- Proteggi la directory wp-includes
- Escludi la Directory dalla navigazione
- Proteggi il sito WordPress da aggiunte di codice
5. Quali operazioni puoi effettuare con il file .htaccess
- Effettua un htaccess redirect 301 o htaccess redirect 404
- Reindirizza tutto il traffico da http:// ad https://
- Impedisci la visualizzazione delle Directory
- Imposta i files principali
- Previeni l’hotlinking delle immagini
- Proteggi le tue cartelle con una Password
- Blocca gli indirizzi IP specifici che fanno Spam
- Come impostare WWW o non WWW
- Scopri come forzare il download dei files multimediali
- Visualizza gli errori che possono essere presenti in un sito
6. .htaccess test – scopri se hai inserito bene le regole all’interno del tuo sito WordPress
.htaccess: la guida definitiva per usare il file htaccess
Attraverso il file htaccess è possibile effettuare moltissime operazioni, come ad esempio htaccess rewrite, .htaccess redirect, il ripristino di determinati documenti, l’attivazione della cache di WordPress, la gestione dei Robot e Crawler dei motori di ricerca come Google e Bing.
Moltissime persone hanno paura di mettere mano al file .htaccess anche perché se la modifica non viene effettuata correttamente c’è il rischio che il sito WordPress non venga più visualizzato.
Detto questo, all’interno di questo articolo ti spiegheremo esattamente che cos’è il file htaccess, come funziona e quali sono le operazioni che possono essere effettuate inclusi i principali trucchi ed ottimizzazioni del file htaccess wordpress
Ma ancora prima di iniziare ad elencare le operazioni che possono essere effettuate, è necessario capire che cos’è il file .htacces e quale è la sua funzione.
Che cos’è il file .htaccess
Il file .htaccess è un file di configurazione utilizzato dal Web Server Apache che può comunicare a quest’ultimo come presentare varie forme di informazione e come gestire alcune intestazioni di richiesta HTTP.
In pratica il file .htaccess è un mezzo di decentralizzazione per poter organizzare le funzionalità di ogni singolo sito web in un unico posto.
E’ anche possibile utilizzare un file .htaccess per ciascun sito web ma non lo consigliamo perché potrebbe non essere sicuro ed il tuo account potrebbe essere soggetto ad un eventuale attacco hacker.
Come visualizzare il file .htaccess
Il file htaccess editor può essere visualizzato e modificato accedendo via FTP oppure accedendo all’interno del Gestore File di cPanel, solitamente il file non è visibile, quindi è necessario visualizzare le cartelle ed i files nascosti, scopri come visualizzare il file .htaccess
Come creare il file .htaccess WordPress
Il tuo sito web potrebbe non possedere di default un file .htaccess, nessun problema! Puoi creare il file htaccess generator direttamente da cPanel o utilizzando un Editor di testo come il Blocco Note o NotePad++
Devi semplicemente generare un nuovo file chiamandolo .htaccess ed inserire all’interno questo codice:
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
Se invece hai attivato Multisite su WordPress dovrai utilizzare il seguente codice:
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*.php)$ $2 [L]
RewriteRule . index.php [L]
htaccess WordPress – proteggi il tuo sito WP
WordPress è il CMS più utilizzato sul Web, quindi abbiamo deciso di dedicare un paragrafo esclusivamente per WordPress .htaccess, vediamo insieme in che modo puoi aumentare la sicurezza e le performance del tuo sito WordPress grazie al file .htaccess editor:
a) .htaccess – impedisci di scoprire il nome utente di WordPress
Se un utente inserisce l’URL tuosito.com/?author=1, viene rendirizzato all’interno della pagina dell’autore, in questo modo l’utente ha la possibilità di raccogliere tutti i nomi utenti usati da chi ha pubblicato contenuti sul tuo sito.
Se l’utente è un malintezionato e vuole bucare il tuo sito WordPress deve solamente trovare la password che se non è complessa può succedere che il tuo sito sia in serio pericolo.
Per evitare questa situazione devi semplicemente inserire all’interno del file htaccess il seguente codice:
RewriteCond %{QUERY_STRING} author=d
RewriteRule ^ /? [L,R=301]
b) .htaccess password – proteggi l’area di login di WordPress
Tutti gli utenti che utilizzano WordPress sanno che per accedere al backend del CMS devono effettuare il login mediante il percorso /wp-admin oppure /wp-login.php
Per rendere più sicuro il proprio sito web WordPress è possibile proteggere con una Password l’area di Login per accedere nel backend di WordPress.
Apri il file .htaccess ed inserisci quanto segue:
123456789Order Deny,Allow
Deny from All
Satisfy Any
AuthName
"Protected By AskApache"
AuthUserFile /web/askapache.com/.htpasswda1
AuthType Basic
Require valid-user
E’ anche possibile proteggere con password le altre cartelle, per conoscere il codice da inserire per proteggere altre Directory guarda questo link.
c) Autorizza determinati IP per accedere nel backend di WordPress
Se hai un ip statico puoi limitare l’accesso solamente al tuo IP all’interno della bacheca di WordPress, gli indirizzi IP non autorizzati verranno rimandati alla pagina di errore 404.
Per far questo è necessario inserire il seguente codice all’interno del file .htaccess e sostituire “Il tuo indirizzo IP1” con il tuo indirizzo IP statico, se non lo conosci lo puoi visualizzare accedendo all’interno del sito mio-ip.org!
ErrorDocument 401 /tuo-sito-wordpress/index.php?error=404
ErrorDocument 403 /tuo-sito-wordpress/index.php?error=404
RewriteEngine on
RewriteCond %{REQUEST_URI} ^(.*)?wp-login.php(.*)$ [OR]
RewriteCond %{REQUEST_URI} ^(.*)?wp-admin$
RewriteCond %{REMOTE_ADDR} !^Il tuo indirizzo IP 1$
RewriteCond %{REMOTE_ADDR} !^Il tuo indirizzo IP 2$
RewriteCond %{REMOTE_ADDR} !^Il tuo indirizzo IP 3$
RewriteCond %{REMOTE_ADDR} !^Il tuo indirizzo IP 4$
RewriteCond %{REMOTE_ADDR} !^Il tuo indirizzo IP 5$
RewriteRule ^(.*)$ - [R=403,L]
d) Impedisci l’introduzione e l’esecuzione dei files .php
La maggior parte delle volte un virus / malware si trova all’interno di un file eseguibile come il file .php, quindi per evitare che accada questa disgrazia ti consigliamo di aggiungere all’interno del file questo codice:
RewriteCond %{REQUEST_URI} !^/wp-content/plugins/file/to/exclude.php
RewriteCond %{REQUEST_URI} !^/wp-content/plugins/directory/to/exclude/
RewriteRule wp-content/plugins/(.*.php)$ - [R=404,L]
RewriteCond %{REQUEST_URI} !^/wp-content/themes/file/to/exclude.php
RewriteCond %{REQUEST_URI} !^/wp-content/themes/directory/to/exclude/
RewriteRule wp-content/themes/(.*.php)$ - [R=404,L]
e) Proteggi i files importanti di WordPress
Attraverso questo codice potrai proteggere files importanti come il file error_log ed il file di configurazione WordPress nonché wp-config.php
<FilesMatch "^.*(error_log|wp-config.php|.[hH][tT][aApP].*)$">
Order deny,allow
Deny from all
</FilesMatch>
f) Proteggi la directory wp-includes
All’interno della cartella wp-includes si trovano moltissimi files importanti, tramite questo codice bloccherai l’accesso a qualsiasi persona.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^wp-admin/includes/ - [F,L]
RewriteRule !^wp-includes/ - [S=3]
RewriteRule ^wp-includes/[^/]+.php$ - [F,L]
RewriteRule ^wp-includes/js/tinymce/langs/.+.php - [F,L]
RewriteRule ^wp-includes/theme-compat/ - [F,L]
</IfModule>
g) Escludi la Directory dalla navigazione
Essendo che WordPress ha una struttura predefinita, qualsiasi persona la può conoscere, quindi inserendo il codice sotto riportato puoi escludere la directory dalla navigazione.
Options All -Indexes
h) Proteggi il sito WordPress da aggiunte di codice
Gli hacker tentano sempre di modificare le variabili di WordPress _REQUEST e GLOBAL per provare ad accedere all’interno del sito web, mediante questo codice impedisci di far inserire del codice all’interno di WordPress.
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|[|%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2})
RewriteRule ^(.*)$ index.php [F,L]
Quali operazioni puoi effettuare con il file .htaccess
Prima di effettuare qualsiai operazione sul file htaccess WordPress ti consigliamo di eseguire sempre un backup completo del tuo sito web.
Se sei cliente di Xlogic Hosting hai la possibilità di generare un backup su cPanel oppure puoi acquistare il servizio di Backup automatico JetBackup, in questo modo non dovrai più pensare a nulla perché per qualsiasi problema avrai la possibilità di ripristinare un backup in due semplicissimi click.
Il file può essere utilizzato sia su un sistema htaccess apache ma anche su un sistema htaccess litespeed, a proposito, noi di Xlogic Hosting utilizziamo LiteSpeed, un sostituto di Apache migliore in termini di velocità e di sicurezza, se non conosci il Web Server LiteSpeed ti invito a consultare questa pagina: LiteSpeed – CloudLinux.
Scopri quali sono le principali operazioni che puoi effettuare inserendo delle determinate regole all’interno del file rewriterule htaccess.
a) Come effettuare un htaccess redirect 301 o redirect 404
I redirect 301 sono necessari quando si vuole indicare ai crawler dei motori di ricerca che una determinata pagina è stata spostata definitivamente ad un altro indirizzo, per far questo è necessario inserire questo codice:
Redirect 301 /vecchio.php http://www.nuovosito.com/nuovo.php
esempio: Redirect 301 https://test.xlogic.org/ https://xlogic.org
In questo modo l’utente che accederà all’interno del sottodominio test.xlogic.org verrà reindirizzato al sito principale nonché xlogic.org
Mentre l’errore 404 è molto importante e se non viene gestito nel migliore dei modi rischia di danneggiare il nostro sito web, quindi per poter risolvere il problema è necessario inserire nel file .htaccess il seguente codice:
# Pagina per errori 404
ErrorDocument 404 /errore-404.html
In questo modo l’utente che visualizza una pagina non esistente verrà automaticamente reindirizzato alla pagina 404.
b) Come reindirizzare tutto il traffico da http:// ad https://
A google piacciono i siti web sicuri, quindi è molto importante che tutto il traffico venga reindirizzato mediante il protocollo https://, per far questo devi inserire il seguente codice all’interno del file:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Se non possiedi un certificato SSL diventa nostro cliente! Offriamo gratuitamente su tutti i nostri piani Hosting uno o più certificati SSL della Comodo per tutti i tuoi domini e sottodomini!
c) Come impedire la visualizzazione delle Directory
E’ necessario inserire questo codice all’interno del file htaccess quando ad esempio il visitatore visualizza un immagine del sito ma se modifica il percorso riesci a vedere anche tutti gli altri files che non dovrebbero essere visibili, mi spiego meglio facendo un esempio:
1) Il visitatore visualizza questa immagine:
- https://xlogic.org/images/server02.png
2) Se non inserisci il codice, qualsiasi visitatore avrà la possibilità di visualizzare anche gli altri files presenti all’interno della cartella /images/
In pratica con il file .htaccess impedisci ai visitatori di visualizzare il contenuto delle directory.
Per impedire la visualizzazione delle directory e dei files presenti, devi creare un file .htaccess all’interno di ogni cartella che non vuoi rendere visibile e devi inserire questo codice:
1 | Options -Indexes |
d) Impostazioni della Directory
E’ possibile comunicare al Web Server quali documenti dovrebbero essere inizialmente trattati come i documenti principali, devi semplicemente inserire questo codice:
1DirectoryIndex index.html index.cgi index.php
Questo significa che i tre files indicati all’interno del file .htaccess (in ordine di inserimento) verranno considerati dal sistema come files principali per poter rendere visibile il tuo sito web.
e) Come prevenire l’hotlinking delle immagini
Questa situazione si verifica quando altre persone copiano l’url di un immagine da un tuo articolo o pagina e la usano sul proprio sito, in questo modo non la caricano sul loro Server ma utilizzano la tua banda rallentando così il tuo sito WordPress.
Per evitare questo problema è necessario accedere all’interno del file htaccess ed inserire questo codice:
RewriteEngine On RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER}
!^https://(www.)?your-site.com/.*$ [NC] RewriteRule .(gif|jpg)$
https://www.your-site.com/hotlink.gif [R,L]
Al posto di your-site.com devi inserire il nome del tuo dominio mentre invece di https://www.your-site.com/hotlink.gif devi inserire l’intero percorso dove si trova l’immagine da proteggere.
f) Come proteggere le tue cartelle con una Password
La protezione delle Directory con una Password è una procedura molto comune che ha il compito di proteggere le aree di amministrazione e molte altre cartelle ritenute importanti all’interno del tuo sito WordPress.
Segui questa procedura per proteggere una determinata cartella con una Password:
1) Crea un file .htaccess all’interno della cartella che desideri proteggere
2) Inserisci il seguente codice all’interno del file htaccess password:
AuthName “Area Protetta”
AuthUserFile /path/to/password/file/.htpasswd
AuthType Basic
require valid-user
- La prima riga indica al Server che la Directory protetta è denominata “Area Protetta”
- La seconda riga indica la posizione del file Password
- La terza riga indica la tipologia di Autenticazione
- La quarta riga indica che abbiamo bisogno di credenziali di accesso valide che può essere usata anche per specificare un nome utente specifico come ad esempio: ‘require user username’ richiede il nome utente ‘username’.
3) Sostituisci all’interno del file .htaccess il percorso (/path/to/password/file/.htpasswd) con il percorso reale che permette di connettere il file .htaccess password all’interno del tuo sito WordPress.
4) Crea il file .htpasswd all’interno della cartella che hai scelto ed inserisci questo codice all’interno del file htaccess:
username:encryptedpassword
xlogic_test:lWE10RTRaaCVFUc1K
Hai la possibilità di generare una password complessa cliccando su questo link: htpassword generator
g) Firewall .htaccess – come bloccare determinati indirizzi IP per Spam
E’ possibile riconoscere potenziali visitatori che effettuano Spam e negare loro l’accesso al tuo sito web; Questa operazione può sembrare estrema ma a volte può succedere che una persona o un gruppo di persone prendano di mira il tuo sito web e questa può essere un’ottima soluzione per bloccare gli attacchi.
Puoi scegliere anche un dominio di riferimento per negare o escludere i visitatori da un indirizzo IP.
1234order allow,deny
deny from 200.0.0.0
deny from 130.50.5.
allow from all
Questo blocco di IP avrà come target il primo IP (200.0.0.0) ed ogni IP entro l’intervallo di 130.5.5.(da .0 a 200).
h) Dominio e Sottodominio – WWW e non WWW
I motori di ricerca possono indicizzare il sito web sia con www che senza www, però conviene impostarlo solamente in un unico modo, per far questo è necessario inserire il seguente codice:
1 2 3 4 5 6 7 8 9 | # Forza il sottodominio con www RewriteEngine On RewriteCond %{HTTP_HOST} ^dominio.it [NC] RewriteRule ^(.*)$ http: //www.dominio.it/$1 [L,R=301] # No Sottodominio RewriteEngine On RewriteCond %{HTTP_HOST} !^dominio.it$ [NC] RewriteRule ^(.*)$ http: //dominio.it/$1 [L,R=301] |
Questo codice proviene da questo archivio e fornisce una soluzione molto utile.
i) Forza il Download dei files multimediali al posto di essere visualizzati sul Browser
Attraverso questo codice potrai permettere al visitatore di effettuare il download diretto del file multimediale invece di produrre il video o l’audio direttamente dal Browser:
1AddType application/octet-stream .zip .rar .mp3 .avi .mp4
Ovviamente dovrai inserire all’interno del codice il formato che ti interessa.
j) Visualizza gli Errori .htaccess
Solitamente questi errori “numerici” vengono visualizzati solamente lato server, in questo modo potrai conoscere tutti gli errori che possono essere presenti sul tuo sito web.
|
|
htaccess tester – scopri il file htaccess di un sito
Controlla le regole di rewrite htaccess inserendo semplicemente l’url alla quale stai appicando le regole, posiziona il contenuto all’interno dell’area dedicata e procedi ad effettuare la verifica, ecco come! Testa le regole del file htaccess
Alla prossima!
Articoli Simili
This post was last modified on 28 Dicembre 2023 12:22