Manual:Short URL/Apache/it

Queste istruzioni sono d'aiuto per l'impostazione di indirizzi brevi su Apache. Il server web LiteSpeed è compatibile con Apache e può essere configurato relativamente allo stesso modo. Per informazioni su cosa sono gli indirizzi brevi (Short URLs), o per istruzioni sulla configurazione per altri server, vedi. Se non sai quale server stai usando, ad es. perché utilizzi qualche tipo di servizio hosting, è probabile che tu stia usando Apache.

Setup
Prima di iniziare, devi decidere il nome del percorso dei tuoi indirizzi brevi.

In questo manuale raccomandiamo, e diamo per sottinteso, ciò che segue. Ricorda di usare sempre i tuoi specifici percorsi se sono diversi.


 * La directory MediaWiki si trova a:
 * Il formato di indirizzo breve desiderato è:

Trova il file giusto
Il modo raccomandato di impostare indirizzi brevi in Apache è mediante modifica dei file di configurazione di Apache. Ciò richiede che tu abbia accesso alla configurazione del server. Se ti trovi in un hosting condiviso, assai probabilmente non avrai questo accesso e dovrai invece usare un file. Usare i file  è meno efficiente e non ti offre lo stesso controllo in caso di setup complessi con domini multipli; ma i file   sono comunque abbastanza potenti da consentirti di impostare la maggior parte delle configurazioni di indirizzi brevi. Gli utenti di LiteSpeed dovrebbero usare il metodo.

Usa le istruzioni che trovi in una delle due seguenti sezioni, a seconda del fatto che tu abbia un accesso root o che debba usare invece i file.

Trova i file di configurazione di Apache (accesso root)
Il file di configurazione da modificare per le configurazioni root potrebbe essere in uno qualsiasi fra numerosi possibili posti.

Il file corretto da modificare è quello in  laddove la configurazione del tuo wiki sia già stata impostata. La maggior parte delle distribuzioni Linux integrano Apache con un set di directory  e   di impostazioni.

Se non ne hai impostata una, e se stai usando la preimpostata  per il setup del tuo wiki, allora puoi modificare.

Non dimenticare di abilitare in  il superamento (override) con. È disabilitato di default in Ubuntu 12.04 e Ubuntu 12.10.

Se la tua distribuzione non contiene queste directory, dovresti modificare il file di configurazione di Apache direttamente. Questo file dovrebbe trovarsi in. Nota che una volta lo si chiamava, se per caso tu hai un   e nessun  , allora il file che devi editare è.

Se il tuo file config di Apache non è in nessuno di questi luoghi, consulta la documentazione di qualsiasi cosa tu abbia usato per installare Apache, e trova dove si trova il file di configurazione.

Se sei in un hosting condiviso senza accesso ai file di configurazione di Apache, allora dovrai usare un file .htaccess.

In un file di configurazione Apache probabilmente hai un blocco VirtualHost che contiene il tuo wiki. Se ce n'è uno, è lì che le tue direttive (rewrite rules) devono andare. RewriteRule config does not inherit so don't put these config options in the global config if you are using a VirtualHost.

Dopo aver sistemato come sopra indicato il file config dentro Apache, dovrai riavviare Apache per applicare le modifiche.


 * Se stai usando cPanel o Plesk, dovrebbe esserci una funzione per il riavvio del server.
 * Da riga di comando, il comando in genere è qualsoa tipo,  ,   o, come nelle più recenti versioni di Fedora,   . Questi comandi vanno impartiti come root, in genere meglio se premettendo.

Dove vanno messi i file .htaccess
If you're using a  file you'll need to edit or create the file. Find the path that contains both your script path and your virtual path. Usually this means the top directory of your site, but let's look at a few examples:

Note that if you want to make a redirect from the main domain to your wiki's Main Page (e.g. http://example.org/ http://example.org/wiki/Main_Page ). Then you always have to set up the .htaccess file in the top level, even if the other directories are nested deeper.

Impostare le regole di riscrittura (rewrite rules)
Sarà più agevole comprendere il resto di questa sezione non appena data un'occhiata alla sintassi di Apache, ma questa sinossi non è un surrogato o un succedaneo della documentazione ufficiale di Apache:

La direttiva  definisce una condizione che deve essere vera prima che una regola di riscrittura (RewriteRule) che la segue possa essere applicata. Una o più direttive RewriteCond possono precedere una direttiva RewriteRule, e tutte le direttive RewriteCond che precedono una RewriteRule devono essere vere prima che quella regola possa essere applicata a un URI. Nell'esempio che segue,  prende la forma di un riferimento a variabili server, ad es. . Although many  exist, the examples that follow use   (true when TestString is a regular file) and   (true when TestString is a directory), and they are preceded by a negation symbol,.

The  directive may be invoked in both the   file and in any   file, but when the rewrite rule appears in .htaccess files, the implicit per-directory context affects the rule's   because rules are relative to the current directory. In  files, Patterns are not relative to the complete, original URI. For  files, Patterns should never start with a forward slash, , because the URI sub-string will never begin with a. The examples that follow use the  flag whose meaning is Stop the rewriting process immediately, and don't apply any more rules.

The first rule you'll need inside of your config is one to enable the rewrite engine:

Now we need a rule to make your article path a virtual path pointing to index.php. Be sure to replace  and   with the paths you chose in the beginning (if different).

If you are using a root url instead of a normal short url you will need to use the following instead (to ensure that existing files and directories are not seen as article, e.g. " " " " etc.):

Sometimes, the above example doesn't work. The following (you can't set this in a, you need root access for this!) might work instead:

Optionally, you can include a rule to show the Main Page on the path itself, to simplify navigation when people visit urls without a page title specified:

Il risultato finale dovrebbe apparire più o meno così:

or, if you used the way with the "Alias" statement:

LocalSettings.php
Dobbiamo creare le seguenti configurazioni in :

Se ti succede di ottenere una pagina di "Internal error" (errore interno) che dice "Redirect loop detected!" (individuata ripetizione infinita fra i redirect) dopo il termine della configurazione, potrebbe darsi che stai usando qualcosa di diverso dal mod_php. In tal caso, devi abilitare esplicitamente gli indirizzi brevi usando la seguente riga nel tuo LocalSettings.php:

Se ancora ti viene restituito un "internal error" verifica i file di registro (log) del tuo server. Forse devi abilitare il modulo.

Istruzioni semplificate
Ciò che segue è una sintesi di cosa fare se non stai facendo nulla di diverso da quanto MediaWiki raccomanda. Se vuoi fare qualcosa di diverso, dovrai leggere tutti i dettagli sopra.


 * https://example.com/wiki/Main_Page (url location (posizione dell'indirizzo))
 * /home/me/public_html/mediawiki/w/index.html (index.html location)
 * /home/me/public_html/mediawiki/.htaccess (.htaccess location)

Nota che il file .htaccess NON si trova nella directory "w", ma in quella sopra di questa.