Base di conoscenze
1000 FAQ, 500 tutorial e video esplicativi. Qui ci sono delle soluzioni!
Questa guida tecnica dettaglia i limiti delle risorse sui hosting Web Infomaniak; è essenziale distinguere il tempo reale (orologio) dal tempo di calcolo (processore) per comprendere l'origine delle interruzioni degli script.
1. Tempo di connessione MySQL (I/O)
Limite: 30 secondi reali
Questo limite corrisponde al tempo assoluto trascorso "orologio alla mano". Si riferisce alla comunicazione tra PHP e il server del database (MySQL/MariaDB).
Non appena una connessione è aperta, il server del database alloca 30 secondi al massimo per ricevere la richiesta, eseguirla e restituire i risultati. Se questo tempo viene superato (spesso a causa di una richiesta SQL non ottimizzata), il server MySQL interrompe bruscamente la connessione. Questo genera generalmente l'errore MySQL server has gone away.
2. Tempo di elaborazione PHP (CPU)
Limite: 10 secondi CPU
Questo limite riguarda esclusivamente la potenza di calcolo consumata dal server Web per eseguire il codice PHP.
È fondamentale notare che il tempo di attesa non conta. Quando PHP attende una risposta dal database, è in pausa e non consuma quasi tempo CPU. Di conseguenza, uno script verrà interrotto dal server Web solo se effettua calcoli intensivi (cicli complessi, crittografia, elaborazione di file) per più di 10 secondi cumulativi.
Interazione dei due limiti
Per garantire la stabilità dell'applicazione, ogni operazione deve rispettare simultaneamente queste due distinte limitazioni:
- L'applicazione dispone di 30 secondi di tempo totale per interagire con il database (latenza di rete + esecuzione SQL).
- L'applicazione dispone di 10 secondi di tempo di calcolo puro per elaborare i dati ricevuti.
Esempio di funzionamento valido: Uno script che attende 25 secondi una risposta complessa da MySQL (I/O) e poi elabora il risultato per 2 secondi (CPU) funzionerà perfettamente, poiché non ha superato nessuno dei due limiti individuali, anche se il tempo totale è di 27 secondi.
Questa guida spiega come modificare la password di gestione di WordPress o qualsiasi altra Applicazione Web (Joomla, Drupal, Typo3, PrestaShop, ownCloud, ecc.) installata tramite gli strumenti Infomaniak inclusi nelle offerte diWeb hosting a pagamento.
Preambolo
- Alcune applicazioni consentono anche un cambio della password dell'utente direttamente dalla loro interfaccia dedicata:
- Esempio: WordPress (gestire utenti, nomi, password, ruoli, ecc.).
Modificare la password di un'app Web
Per cambiare la password di accesso al pannello di amministrazione dell'applicazione Web, eseguire le seguenti azioni:
- Clicca qui per accedere alla gestione del prodotto sul Manager Infomaniak (Hai bisogno di aiuto?).
- Clicca direttamente su il nomeattribuito al prodotto in esame:

- Clicca su il menu di azionesituato a destra dell'Applicazione Web interessata.
- Clicca su Impostazioni dell'applicazione:

- Clicca su Modifica a destra dell'Applicazione:

- Sotto Password immettere la nuova password (per l'accesso con l'ID sopra indicato):

- Clicca sul pulsante Salva in fondo alla pagina.
Questa guida spiega come convertire un'offerta Web Starter gratuita in un'offerta più completa e migliorata a pagamento, come un Hosting Web condiviso o un hosting web su Server Cloud.
Premessa
- Acquistando un nome di dominio presso Infomaniak, si ottiene 1 indirizzo email gratuito e uno spazio web di base da 10 Mo.
- In pochi clic, è possibile far evolvere questa offerta per beneficiare di un'esperienza arricchita.
Modifica offerta Starter - pagina web di base
Per far evolvere questa offerta gratuita:
- Clicca qui per accedere alla gestione del tuo prodotto sul Manager Infomaniak (hai bisogno di aiuto?).
- Clicca su il menu delle azioni ⋮ situato a destra dell'elemento interessato.
- Clicca su Modifica offerta:
- Segui la guida per scegliere il nuovo tipo di hosting, paga per completare il cambio di offerta.
Questa guida riguarda la sincronizzazione dei server tramite il protocollo NTP (Network Time Protocol) e la configurazione del fuso orario sui server di Infomaniak.
Sincronizzazione precisa dei server tramite NTP
I server di Infomaniak sono tutti sincronizzati tramite il protocollo NTP. L'azienda mette a disposizione i propri server NTP stratum-1 accessibili al pubblico per un utilizzo flessibile.
Per integrare questi server nelle tue impostazioni, utilizzare la registrazione seguente: pool.ntp.infomaniak.ch.
La configurazione predefinita del fuso orario è in UTC. Tuttavia, le funzioni PHP sono progettate per tenere conto di diversi fusi orari in base alle esigenze specifiche.
Per regolare il fuso orario nei tuoi script PHP, utilizzare la funzione date_default_timezone_set('UTC').
MySQL: specifiche temporali
L'infrastruttura Infomaniak supporta le funzionalità che permettono di lavorare con dati temporali in modo preciso ed efficiente, tenendo conto dei fusi orari, il che è cruciale per molte applicazioni moderne:
- MySQL utilizza un database di fusi orari per memorizzare e gestire le informazioni sui fusi orari.
- La tabella
mysql.time_zonecontiene i dati dei fusi orari, incluse le informazioni sui disallineamenti temporali, i nomi dei fusi orari, ecc. - La funzione CONVERT_TZ viene utilizzata per convertire un'ora da un fuso orario a un altro in MySQL con la sintassi seguente:
CONVERT_TZ(dt, from_tz, to_tz), dove:dtè la data/ora da convertire.from_tzè il fuso orario di origine.to_tzè il fuso orario di destinazione.
- Esempio:
CONVERT_TZ('2024-05-14 12:00:00', 'UTC', 'America/New_York')convertirà l'ora 12:00:00 UTC in ora locale a New York.
Questa guida spiega perché esiste una cartella /icons/ all'interno degli Hosting Web Infomaniak.
Cartella /icons/ sul tuo Hosting Web
In alcuni casi, una cartella denominata /icons/ è presente per impostazione predefinita sul tuo hosting Web. Questa cartella è generalmente accessibile tramite HTTP, ma non è visibile nella struttura FTP (www.domain.xyz/icons/).
Questa cartella /icons/ viene spesso utilizzata per memorizzare icone o immagini specifiche utilizzate per visualizzare le liste delle cartelle. Queste icone vengono generalmente utilizzate dai server Web per rappresentare visivamente i diversi tipi di file nelle cartelle quando vengono visualizzate tramite un browser.
Questa guida spiega come aggiungere indirizzi IP alla lista bianca di un sito Web Infomaniak.
Premessa
- Autorizzare gli indirizzi IP su
xmlrpc.phpconsente di accedere agli URL che sono bloccati per impostazione predefinita, poiché considerati a rischio. - Questo tipo di blocco è efficace su tutti i server recenti.
- Per quanto riguarda WordPress, la sua funzionalità XML-RPC è disponibile per impostazione predefinita solo tramite i servizi Infomaniak e JetPack per motivi di sicurezza.
Aggiungere indirizzi IP alla lista bianca xmlrpc.php
Per accedere alla gestione del sito Web:
- Clicca qui per accedere alla gestione del tuo prodotto su Infomaniak Manager (hai bisogno di aiuto?).
- Clicca direttamente sul nome attribuito al prodotto interessato:
- Clicca su Gestisci sotto Impostazioni avanzate:

- Clicca sulla scheda PHP / Apache.
- Completa la riga interessata:

- Clicca sul pulsante in fondo alla pagina per salvare.
Questa guida fornisce informazioni precise sulla gestione dell'ambiente di sviluppo ASP (Active Server Pages, aspx) all'interno dell'infrastruttura di Infomaniak.
Supporto per l'ASP
I servizi di hosting web e server cloud si basano su un'architettura server Apache che non supporta nativamente il modulo Apache::ASP.
Tuttavia, è possibile installare e configurare questo ambiente ASP su VPS Cloud Infomaniak.
Questa guida spiega come configurare una rete di siti WordPress per gestire più siti da una singola installazione di WordPress Infomaniak, con indirizzi URL come site1.domain.xyz, site2.domain.xyz, o anche con domain1.com, domain2.com, ecc.
Semplificatevi la vita! In caso di necessità, partner locali e referenziati da Infomaniak possono occuparsi di queste procedure. Lanciate un appalto gratuito. Si occupano di tutto, liberandovi dai dettagli tecnici.
Installazione di WordPress multisito
Per iniziare:
- Installate WordPress tramite Infomaniak sul vostro spazio di hosting con un nome di dominio principale:

- Questo primo sito WordPress deve essere raggiungibile e funzionare correttamente:

- Questo primo sito WordPress deve essere raggiungibile e funzionare correttamente:
- Accedete tramite FTP.
- Modificate il file
wp-config.phpdi questo primo sito WordPress. - Sopra la riga "
/* That's all, stop editing! Happy blogging. */" (#94) copiate-incollate il codicedefine('WP_ALLOW_MULTISITE', true);:
- Salvate le modifiche.
- Accedete poi all'amministrazione del vostro sito WordPress.
- Disattivate temporaneamente tutte le estensioni WordPress:

- Andate nel menu STRUMENTI per creare una Rete:

- Scegliete il metodo di creazione dei vostri diversi WordPress (su sottodomini)…
- Cliccate sul pulsante di installazione:

- Aggiungete le indicazioni che appaiono sullo schermo in
wp-config.phpe.htaccesssul server. - Dopo la riconnessione al vostro WordPress otterrete un nuovo menu "I miei siti" in cui potrete aggiungere e gestire i vostri diversi siti della stessa rete:

- Riattivate le estensioni disattivate.
- Nel Manager, aggiungete un alias al vostro sito della forma
*.vostro-domino-qui (l'asterisco permette di creare un alias wildcard) con aggiornamento DNS affinché il correttoCNAMEvenga aggiunto automaticamente nella zona:
- Installate o aggiornate i vostri certificati SSL:

- Quando creerete un nuovo sito all'interno della rete, nominandolo ad esempio
home2allora sarà accessibile tramitehome2.domain.xyze così via:
Questa guida permette di risolvere un errore di tipo "Invalid query: MySQL server has gone away".
Premessa
- Questo tipo di errore ha spesso come origine il fatto di mantenere una connessione MySQL aperta senza inviare richieste per un intervallo di tempo oltre il quale la connessione viene chiusa: http://dev.mysql.com/doc/refman/5.7/en/gone-away.html
- Le variabili
wait_timeouteinteractive_timeoutche controllano questa disconnessione sono impostate a 30 secondi: http://dev.mysql.com/doc/refman/5.0/en/communication-errors.html
Soluzioni
Per evitare l'errore "MySQL server has gone away", ecco alcune possibili soluzioni:
Verifica e riconnessione automatica
Prima di eseguire una richiesta, è consigliabile testare se la connessione MySQL è ancora attiva. Se la connessione è stata chiusa, è possibile ripristinarla automaticamente prima di procedere con la richiesta. Ecco un esempio in PHP:
if (!mysqli_ping($connexion)) {
mysqli_close($connexion);
$connexion = mysqli_connect($host, $user, $password, $database);
}La funzione mysqli_ping() verifica se la connessione è ancora valida. Se non lo è, lo script chiude la connessione e ne apre una nuova.
Invio di "Ping" regolare
Un altro modo consiste nell'eseguire uno script che invia regolarmente un "ping" al database per mantenere la connessione attiva. Ad esempio, potresti creare un'attività pianificata (cron job) che invia una richiesta leggera, come SELECT 1; a intervalli regolari.
Regolazione dei parametri MySQL (Server Cloud)
Con un Server Cloud, è possibile aumentare i valori delle variabili wait_timeout e interactive_timeout dal menu MySQL del tuo server per prolungare la durata della connessione prima che venga chiusa.
Questa guida è rivolta a chi desidera eseguire test di vulnerabilità del proprio sito / server ospitato da Infomaniak.
Tollerati e limitati
È possibile eseguire test di vulnerabilità (injection SQL, XSS, ecc.), intrusioni o test di penetrazione (pentest) del proprio hosting Infomaniak solo nelle seguenti condizioni:
- … tra le 9 e le 17 CET
- … dal lunedì al venerdì
- … con il minimo numero di pacchetti di attacco indipendentemente dal software utilizzato (AppScan ad esempio)
- … senza mai effettuare un singolo attacco di tipo DoS o DDoS (Negazione del servizio / Denial of Service)
- … rispettando le Condizioni Generali di Utilizzo di Infomaniak, in particolare il quadro condiviso dei servizi
Qualsiasi uso improprio potrebbe comportare una risoluzione anticipata da parte di Infomaniak.
Questa guida dettaglia gli errori di tipo "502 Bad Gateway" che si possono ottenere visitando un sito web.
Premessa
- L'errore 502 Bad Gateway si verifica quando il server che fa da gateway tra il browser e il server web di origine riceve una risposta non valida.
- Questo errore può essere causato da un server web sovraccarico, problemi di comunicazione tra un CDN e il server web di hosting o un server proxy configurato in modo errato.
- A volte, l'errore può essere causato da un input errato nel server DNS.
Suggerimenti per la risoluzione
Per risolvere l'errore 502 Bad Gateway, spesso è necessario procedere per eliminazione:
- Verifica se non si tratta di un sovraccarico temporaneo del server: basta ricaricare la pagina dopo qualche minuto perché l'errore scompaia.
- Cancella la cache del browser.
- Prova da un altro browser.
Questa guida spiega come risolvere un problema di importazione di un file .csv in una tabella MySQL. L'alternativa proposta consiste nel leggere il file CSV riga per riga con PHP e inserire i dati nel database MySQL.
Funzione "LOAD DATA LOCAL INFILE" disattivata
La funzione LOAD DATA LOCAL INFILE consente di importare un file CSV direttamente in una tabella MySQL. Tuttavia, questa funzionalità viene spesso sfruttata dagli attaccanti per ottenere un accesso non autorizzato ai siti ospitati su server che la accettano.
Al fine di prevenire qualsiasi rischio di sicurezza e proteggere i dati dei clienti, Infomaniak ha disattivato la funzione LOAD DATA LOCAL INFILE. Gli utenti che importano i loro file CSV tramite phpMyAdmin (senza selezionare l'opzione "CSV tramite LOAD DATA") non sono interessati.
Ecco un metodo alternativo per importare dati in formato CSV in una tabella MySQL. L'esempio seguente mostra come gestire correttamente gli errori durante l'apertura del file CSV e l'inserimento dei dati nel database.
Questo script utilizza mysqli per connettersi al database e query preparate per inserire i dati. Questo garantisce una migliore sicurezza, una compatibilità ottimale con le versioni recenti di PHP e un'integrazione semplice nel tuo progetto, sia in uno script esistente che in un nuovo file situato nella directory /web:
$fileName = "data.csv";
// Connect to MySQL database using mysqli
$link = new mysqli("localhost", "username", "password", "database");
// Check database connection
if ($link->connect_error) {
die("Connection failed: " . $link->connect_error);
}
// Open the CSV file for reading
if (($handle = fopen($fileName, "r")) !== FALSE) {
// Read each line of the CSV file
while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) {
// Prepare the SQL query dynamically
$query = "INSERT INTO `test` VALUES (" . str_repeat('?,', count($data) - 1) . "?)";
$stmt = $link->prepare($query);
// Check if query preparation was successful
if ($stmt === FALSE) {
die("Query preparation failed: " . $link->error);
}
// Bind parameters (assuming all columns are strings)
$types = str_repeat('s', count($data));
$stmt->bind_param($types, ...$data);
// Execute the query
if (!$stmt->execute()) {
die("Query execution failed: " . $stmt->error);
}
// Close the statement
$stmt->close();
}
// Close the CSV file
fclose($handle);
} else {
echo "Error: unable to open the file.\n";
exit(1);
}
// Close the database connection
$link->close();
?>Ottieni assistenza
Purtroppo, non è possibile indicare esattamente in quale punto del script queste righe di codice devono essere inserite.
Se questo metodo presenta problemi (ad esempio in caso di importazione simultanea di più file CSV senza messaggio di errore), potrebbe essere colpa della struttura delle tabelle o dell'indicizzazione dei campi. In tal caso, contatta il tuo webmaster per la verifica.
Consulta anche la documentazione ufficiale PHP relativa alla funzione fgetcsv().
Semplificati la vita! In caso di necessità, partner locali e certificati da Infomaniak possono occuparsi di queste procedure. Avvia una richiesta di offerta gratuita — loro si occupano di tutto, liberandoti dagli aspetti tecnici.
Questa guida riguarda l'ottimizzazione di un sito web e, in particolare, l'uso di un motore di cache su di esso.
Premessa
- Quando Infomaniak si accorge che il tuo sito web consuma più risorse rispetto ad altri siti sullo stesso server, viene effettuata un'analisi.
- Spesso, emerge che una semplice modifica a una richiesta o a un parametro permetterebbe di ottimizzare il tuo sito e di alleggerire il carico del server.
- Verrete quindi contattati via email con le istruzioni da seguire, che includono spesso l'installazione o l'attivazione di un motore di cache.
- Il consumo di risorse non è necessariamente legato al numero di visitatori.
- Un sito ben ottimizzato, aggiornato e con un motore di cache configurato correttamente può gestire decine di migliaia di visitatori al giorno, mentre un sito mal ottimizzato può consumare troppe risorse con solo poche visite al giorno.
- Un motore di cache memorizza temporaneamente i dati frequentemente utilizzati per fornirli più rapidamente in risposta a nuove richieste.
- Questo migliora significativamente la velocità del sito e riduce il carico sui database o servizi web.
- Per installare un sistema di cache su Serveur Cloud Infomaniak, consultate questa altra guida.
Attivare un motore di cache…
… su WordPress
WordPress dispone di numerosi plugin di cache. Ecco i più popolari ed efficaci:
- WP Super Cache (gratuito, facile da configurare)
- W3 Total Cache (avanzato, opzioni multiple)
- WP Rocket (a pagamento, interfaccia semplice e performante)
Procedura di attivazione:
- Accedi alla tua amministrazione WordPress.
- Vai su Estensioni > Aggiungi.
- Cerca uno dei plugin menzionati, installalo e poi attivalo.
- Configurate le opzioni di cache in base alle vostre esigenze: caching delle pagine, minificazione dei file CSS/JS, compressione gzip, ecc.
- Testate le prestazioni con e senza cache utilizzando strumenti come Google PageSpeed Insights o GTmetrix.
Per approfondire, consultate anche:
- https://news.infomaniak.com/6-moyens-techniques-pour-optimiser-un-site-wordpress/
- https://news.infomaniak.com/memcached-w3totalcache/
- https://www.seomix.fr/?s=cache
… su Joomla
Accedi all'amministrazione Joomla e segui questi passaggi:
- Accedi a Sistema > Configurazione globale.
- Seleziona la scheda Sistema.
- Nella sezione Cache, attiva la cache del sistema.
- Scegli il tipo di cache: Conservativo (cache individuale per utente) o Progressivo (cache condiviso tra utenti). La cache progressiva è consigliata per migliori prestazioni.
- Imposta la durata di validità della cache in minuti (ad esempio, 60 minuti per un sito attivo o più a lungo per un sito statico).
- Salva le impostazioni.
- Per svuotare manualmente la cache, vai su Sistema > Gestisci la cache e poi elimina i file della cache.
Joomla 5 offre una gestione del cache migliorata e un'interfaccia modernizzata rispetto alla versione 4.x.
… su PrestaShop
Accedi all'amministrazione di PrestaShop quindi:
- Vai nel menu Impostazioni avanzate > Prestazioni.
- Nella sezione Smarty, attiva l'opzione Cache.
- Nel blocco CCC (Combine, Compress and Cache), attivate tutte le opzioni disponibili.
- Nel blocco Cache, attiva Utilizza la cache.
- Segui le istruzioni per installare le estensioni o i moduli consigliati (es. Memcached, Redis) per un'ottimizzazione aggiuntiva.
- Salva le tue modifiche.
… su Magento
Magento 1.x è obsoleto. Per Magento 2, procedere come segue:
- Accedi all'amministrazione di Magento.
- Accedi a Sistema > Gestione della cache.
- La cache è attivata per impostazione predefinita. È possibile svuotare o aggiornare la cache da questa interfaccia.
- Assicurati che tutti i tipi di cache consigliati (Configurazione, Page Cache, Layouts, ecc.) siano attivati.
- Per prestazioni ottimali, utilizzate soluzioni complementari come Redis o Varnish se il vostro hosting le supporta.
… su Contao (versione 4.x)
Accedi al back office di Contao e poi:
- Vai su Moduli > Sistema > Configurazione.
- In Modalità della cache, seleziona le opzioni Utilizzare la cache del sistema e Utilizzare la cache del browser.
- Salva le tue modifiche.
… su Drupal (versione 9.x)
Per Drupal 7.x (ancora utilizzato ma non consigliato), procedere come segue:
- Accedi all'amministrazione di Drupal.
- Vai su Configurazione > Prestazioni.
- Spuntate la casella Metti in cache le pagine per gli utenti anonimi.
- Salva.
Per Drupal 9.x (consigliato): la cache è attivata per impostazione predefinita e gestita tramite i moduli interni. È possibile configurare la cache in Configurazione > Sviluppo > Prestazioni. Per migliorare ulteriormente le prestazioni, utilizzare sistemi esterni come Redis o Varnish, se disponibili.
Questa guida riguarda il nome delle pagine di accesso che è possibile avere sul tuo Hosting Web Infomaniak, e che saranno prese in considerazione in priorità quando un visitatore accede al tuo sito web tramite il suo nome di dominio.
Per quanto riguarda Site Creator, consultate questa altra guida.
Premessa
- Le pagine di accesso predefinite su un server web sono le prime pagine che si visualizzano quando un utente accede a un sito web senza specificare un file particolare.
- Se inserisci semplicemente
http://domain.xyznella barra degli indirizzi del tuo browser, il server web cercherà una pagina iniziale predefinita da visualizzare, ad esempioindex.html,index.php,index.htm, o altre varianti simili.
Ordine di priorità delle pagine di accesso
Ecco, in ordine di priorità, le pagine caricate per impostazione predefinita su Infomaniak:
- index.html
- index.htm
- home.html
- home.htm
- default.html
- default.htm
- index.cgi
- index.php
- index.php5
- index.php4
- index.php3
- default.php
- home.php
- welcome.php
In sintesi:
- Se avete 2 pagine nella radice del vostro hosting, grazie alla classificazione sopra, noterete che
index.phpviene riconosciuto in priorità rispetto awelcome.php. - Si può anche dedurre che se avete solo
welcome.phpcome pagina nella directory radice, verrà caricata e funzionerà come pagina iniziale. - Se avete una pagina
accueil.html, non funzionerà perché questo nome non è nell'elenco. - Quando digiterete
www.domaine.xyznel browser, si visualizzerà automaticamente soloindex.php(e per visualizzarewelcome.phpdovrete digitare il nome esatto della paginawww.domaine.xyz/welcome.php).
Personalizzare la pagina di accoglienza predefinita
Per impostare una pagina di accesso predefinita diversa, aggiungere DirectoryIndex e le pagine appropriate nel file .htaccess:
DirectoryIndex accueil.html index.php index.htmlQuesto significa che il server web cercherà prima un file chiamato accueil.html. Se non trova accueil.php, cercherà index.php, poi index.html.
Per evitare un errore “Crea un database: nessun privilegio” è necessario passare attraverso il Manager Infomaniak e non attraverso phpMyAdmin per aggiungere un nuovo database.
Questa guida spiega come ottenere informazioni sulla presenza di un sistema di cache su un sito utilizzando il comando curl.
Premessa
- Nel mondo della programmazione e dell'amministrazione di sistema, è spesso necessario determinare se un sito web utilizza un sistema di caching per migliorare le sue prestazioni.
- I sistemi di caching come Fastly sono comunemente utilizzati per memorizzare temporaneamente i dati per servirli più rapidamente agli utenti.
- Seguendo questi passaggi, potrete determinare se un sito web utilizza un sistema di caching per migliorare le sue prestazioni e comprendere il funzionamento e l'ottimizzazione dei siti.
Utilizzo del comando curl
curl è uno strumento da riga di comando che permette di trasferire dati utilizzando URL.
L'opzione -svo /dev/null viene utilizzata per eseguire una richiesta silenziosa (-s), visualizzare informazioni dettagliate sulla richiesta (-v) e reindirizzare i dati di output verso /dev/null per ignorarli (/dev/null è un dispositivo speciale nei sistemi Unix/Linux che si comporta come un cestino). -H "Fastly-Debug: true" è un'intestazione HTTP aggiunta alla richiesta per richiedere informazioni di debug specifiche di Fastly.
Eseguire il comando
Esegui il comando seguente da un'applicazione di tipo Terminal (interfaccia a riga di comando, CLI / Command Line Interface) sul tuo dispositivo:
curl -svo /dev/null [url] -H “Fastly-Debug: true”e sostituisci [url] con l'indirizzo del sito web che desideri verificare.
Se il sito utilizza Fastly o un altro sistema di caching simile, vedrai informazioni di debug specifiche nell'output del comando. I dettagli forniti possono includere informazioni sulle richieste e le risposte HTTP, nonché informazioni sulla cache e sulle prestazioni.
Questa guida spiega come attivare l'opzione MultiViews tramite un file .htaccess sui siti ospitati da Infomaniak.
Premessa
- In alcuni casi, l'opzione MultiViews deve essere attivata per gestire problemi di reindirizzamento e di riscrittura degli URL.
- Questa opzione permette al server di indovinare quale file l'utente sta cercando. Esempio:
- Se la cartella
configuratione il fileconfiguration.phpsi trovano nella radice del sito e si tenta di raggiungere l'indirizzodomain.xyz/configuration, l'opzione MultiViews deve essere attivata affinché il server possa indovinare che si desidera accedere al fileconfiguration.php.
- Se la cartella
- L'opzione MultiViews può talvolta entrare in conflitto con regole di riscrittura degli URL più complesse definite da
mod_rewrite(utilizzate da numerosi CMS).
Attivare l'opzione MultiViews
Per fare ciò:
- Aprite o create il file
.htaccessche si trova nella radice del sito interessato. Aggiungete la seguente direttiva:
Options +MultiViews- Salvate le modifiche.
Questa guida riguarda ImageMagick, una soluzione potente per la manipolazione delle immagini, che puoi installare su un Hosting Web Infomaniak.
Per l'installazione, il modo più semplice è passare per Fast installer.
ImageMagick e alternative
Queste soluzioni di manipolazione delle immagini sono compatibili con gli hosting web e i server cloud:
ImageMagick: la suite principale di software per la manipolazione versatile delle immagini tramite la riga di comandoPerlMagick: interfaccia Perl per integrare le funzionalità di ImageMagick in script Perl- Modulo Perl
Image::Magick: estensione Perl per accedere alle funzionalità di ImageMagick senza specificare il percorso assoluto dell'eseguibile GD 2.x: libreria grafica open-source che offre funzionalità simili a ImageMagick, spesso utilizzata in contesti di sviluppo webGallery 2: piattaforma di gestione delle gallerie di immagini compatibile con ImageMagick per la presentazione online
Se necessario, il percorso per ImageMagick è standard poiché installato tramite il repository Debian:
/usr/bine per il modulo Perl Image::Magick:
/usr/local/bin/converto senza specificare il percorso assoluto:
$ perl -e 'use Image::Magick';Tutti i comandi imagemagick sono sotto /usr/bin/ :
/usr/bin/animate
/usr/bin/compare
/usr/bin/composite
/usr/bin/conjure
/usr/bin/convert
/usr/bin/display
/usr/bin/identify
/usr/bin/import
/usr/bin/mogrify
/usr/bin/montage
/usr/bin/streamQuesta guida dettaglia l'uso di Crontab (crons tramite SSH), disponibile solo su Server Cloud, di default (esiste anche un pianificatore di attività per qualsiasi hosting).
Prerequisiti
- I file script chiamati dal cron devono essere eseguibili (CHMOD).
Percorso completo
I compiti Cron non conoscono il percorso assoluto (path). Chiamare PHP senza specificare i percorsi completi dell'eseguibile rende quindi impossibile l'esecuzione del compito. È necessario specificare
/opt/phpX.X/bin/phpsostituendo X.X con la versione di PHP desiderata (/opt/php7.1/bin/php ad esempio).
Altre operazioni
Elencare i crons dell'utente SSH in questione:
crontab -l -u NomUtilisateurSSHModificare i crons:
crontab -e -u NomUtilisateurSSHRicevere una notifica via email del risultato dei propri compiti cron (da aggiungere all'inizio del file):
MAILTO=e-mail@domain.xyz
Ripristinare un backup
Infomaniak salva i crons degli ultimi 7 giorni (una volta al giorno). In caso di cancellazione accidentale, contattare l'assistenza Infomaniak per richiedere un ripristino specificando l'ora e la data della cancellazione.
Questa guida spiega come ottimizzare la memorizzazione nella cache delle risorse web grazie agli header HTTP.
Premessa
- Una buona strategia di cache permette di migliorare significativamente le prestazioni del tuo sito evitando di ritrasmettere inutilmente file invariati.
- La memorizzazione nella cache web si basa su due meccanismi complementari:
- La durata di validità della cache (tramite l'header
Expires) che indica per quanto tempo una risorsa può essere riutilizzata senza contattare il server. - La validazione condizionale (tramite gli header
Last-Modified/If-Modified-Since) che permette di verificare se una risorsa è cambiata prima di ritrasmetterla.
- La durata di validità della cache (tramite l'header
Configurazione della durata della cache con Expires
L'header Expires permette di specificare una durata durante la quale il browser può riutilizzare direttamente le risorse dalla sua cache locale. Ecco come configurarlo nel tuo file .htaccess:
- Crea o apri il file
.htaccessalla radice del tuo sito (di solito in/webo/sites/domain.xyz). Aggiungi la configurazione del modulo
expires:<IfModule mod_expires.c>Definisci le durate di cache appropriate per ogni tipo di risorsa:
ExpiresActive On ExpiresByType text/html "access plus 1 week" ExpiresByType image/jpeg "access plus 1 month" ExpiresByType text/css "access plus 1 month" ExpiresByType application/javascript "access plus 1 month"Queste direttive significano che:
- Le pagine HTML saranno conservate in cache per una settimana.
- Le immagini JPEG, i file CSS e JavaScript saranno conservati per un mese.
Adatta queste durate in base alla frequenza di aggiornamento delle tue risorse.
Chiudi la sezione di configurazione:
</IfModule>
Validazione condizionale con Last-Modified
Anche quando una risorsa è scaduta nella cache, non è sempre necessario ritrasmetterla completamente. Il meccanismo di validazione condizionale permette al browser di verificare se la sua versione in cache è ancora aggiornata. Questo processo funziona così:
- Il server invia automaticamente un header
Last-Modifiedcon ogni risorsa, indicando la sua data di ultima modifica.- Apache gestisce questo nativamente per i file statici - nessuna configurazione aggiuntiva è necessaria.
Quando il browser richiede nuovamente la risorsa, invia un header
If-Modified-Sincecontenente la data che ha in cache:GET /resource HTTP/1.1 Host: www.example.com If-Modified-Since: Wed, 21 Oct 2015 07:28:00 GMT- Il server confronta questa data con la data reale di modifica del file:
- Se il file non è cambiato, restituisce semplicemente un codice
304 Non Modificato, risparmiando così banda passante. - Se il file è stato modificato, restituisce la nuova versione con un codice
200 OK.
- Se il file non è cambiato, restituisce semplicemente un codice