| Promozione siti web | Crea il tuo Sito Web | Google SEO | Design creativo | Trucchi Joomla | Contatti |

Home
Prezzi e Soluzioni
Portfolio Siti Internet
Portfolio Grafica Pubblicitaria
Design e Comunicazione
Risorse Utili
Dominio - Spazio Web
Foto artistiche e pubblicitarie
Creare Video
Corsi di Informatica
Disegnare Siti Internet
Extension Joomla Gratis
Template Joomla Gratis
Strumenti SEO
Guide SEO
Chi Siamo
INFORMATIVA PRIVACY
INFORMATIVA COOKIES

Siti internet in Joomla: eliminare "index.php" dagli URL prodotti da sh404SEF

PDF Stampa E-mail
Scritto da Arteweb   

sh404SEF è un plugin SEO per Joomla molto apprezzato. Serve in particolare ad effettuare l'URL rewriting, cioè la riscrittura degli URL prodotti normalmente da Joomla, poco appetibili per i motori di ricerca, in indirizzi più comprensibili, anche per gli essseri umani. Per fare un esempio preso direttamente da questo stesso sito, sh404sef permette di trasformare qualcosa di illeggibile come questo:

http://www.arte-web.it/index.php?option=com_content&Itemid=36&id=23&lang=it&task=view

in una stringa di semplice comprensione per tutti come questa:

http://www.arte-web.it/Dominio-Spazio-Web.php

A volte però qualcosa non va nel verso giusto e ci troviamo di fronte a un indirizzo in mezzo a cui compare un "index.php" di troppo:

http://www.arte-web.it/index.php/Dominio-Spazio-Web.php

Per ovviare a questo problema ed eliminare "index.php":

  •  Entrare in Componenti -> sh404SEF e poi cliccare su "Clicca qui per passare alla visualizzazione estesa (con tutti i parametri disponibili)".

  •  Cliccare sulla voce Configurazione di sh404SEF e spostarsi sulla scheda Avanzato

  •  Qui in corrispondenza della terza voce "modalità rescrivibile" selezionare "con Htaccess [mod rewrite]".

  •  L'ultimo passaggio consiste nel modificare il nome del file htaccess.txt di default, che si trova nella directory principale di Joomla, in .htaccess, e di attivare alcune righe di codice eliminando il simbolo del cancelletto da cui sono precedute. Esse vanno cioè decommentate seguendo le indicazioni contenute nella "Documentazione di sh404SEF", a cui si può accedere dalla schermata principale del componente: comunque alla fine la nostra pagina  .htaccess dovrebbe assomigliare a questa (con qualche differenza a seconda del server che si usa, questa su Aruba funziona):

  • # @package Joomla
    # @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
    # @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
    # Joomla! is Free Software
    ##


    #####################################################
    #  READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE
    #
    # The line just below this section: 'Options +FollowSymLinks' may cause problems
    # with some server configurations.  It is required for use of mod_rewrite, but may already
    # be set by your server administrator in a way that dissallows changing it in
    # your .htaccess file.  If using it causes your server to error out, comment it out (add # to
    # beginning of line), reload your site in your browser and test your sef url's.  If they work,
    # it has been set by your server administrator and you do not need it set here.
    #
    #####################################################

    ##  Can be commented out if causes errors, see notes above.
       
    #Options +FollowSymLinks

    # mod_rewrite in use

    RewriteEngine On

    ########## Begin - Rewrite rules to block out some common exploits
    ## If you experience problems on your site block out the operations listed below
    ## This attempts to block the most common type of exploit `attempts` to Joomla!
    #
    # Block out any script trying to set a mosConfig value through the URL
    RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
    # Block out any script trying to base64_encode crap to send via URL
    RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
    # Block out any script that includes a <script> tag in URL
    RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
    # Block out any script trying to set a PHP GLOBALS variable via URL
    RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
    # Block out any script trying to modify a _REQUEST variable via URL
    RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
    # Send all blocked request to homepage with 403 Forbidden error!
    RewriteRule ^(.*)$ index.php [F,L]
    #
    ########## End - Rewrite rules to block out some common exploits

    #  Uncomment following line if your webserver's URL
    #  is not directly related to physical file paths.
    #  Update Your Joomla! Directory (just / for root)

    RewriteBase /
    ErrorDocument 404 /index.php

    #

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} !^/index.php
    RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$  [NC]
    RewriteRule (.*) index.php
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
    ##

 

Video2Brain Joomla! 1.5 DVD di Video2Brain (DVD-ROM) - Mac OS X, Windows 7 / Vista / XP
2 nuovi a partire da EUR 32,07

 
Acquista: EUR 29,16 EUR 20,41

4 nuovi a partire da EUR 20,41
Spedizione gratuita possibile (vedi pagina prodotto)
 
 
Das große Buch zu Joomla! 1.7 (Brossura - set. 2011)
Acquista: EUR 29,11 EUR 20,38

3 nuovi a partire da EUR 20,38
Spedizione gratuita possibile (vedi pagina prodotto)
 

Commenti  

 
+1 #1 Patty 2014-10-23 14:23
Ciao Arteweb, ho un problema enorme con il componente shs404sef che ho installato in un sito joomla 3 su server Aruba, praticamente quando lo attivo esce l'errore 404, non trova le pagine perchè i nuovi url non si formano e quelli vecchi sembrabo essere liquefatti nel nulla. Ho provato di tutto, ho riscritto .htaccess come da te indicato sopra, ho cancellato la cash, ho contattato quelli di aruba ( che secondo me ci capiscono quando me sull'argomento), ho disitallato e installato il componente ed ora mi domando: ma è possibile che sia colpa del server su cui è il sito? Ho fatto la rpva su un altro sito e funziona bene. Il sito con il problema è multilingua, ma questo non c'entra, credo, perchè si vede in tutte le pagine l'errore 404, tranne in home page che si vede bene. Ora è disattivato perchè sto ancora in contatto con quelli di aruba...Aiutoooo
Saluti, Patrizia.
 
 
0 #2 Andrea from arteweb 2014-10-23 14:57
Ciao Patrizia, credo che si, in linea teorica potrebbe dipendere anche dal server, magari dalla sua configurazione, quella che trovi nel file php.ini (che si può settare anche da Aruba). In bocca al lupo, fammi sapere
 

Aggiungi commento


Codice di sicurezza
Aggiorna

Siti Internet Bologna