• User Newbie

    Non funzionano link interni con mod_rewrite

    Buongiorno,
    dopo aver creato il backup del mio sito con il plugin akeeba, l'ho reinstallato utilizzando kickstart su un nuovo server.

    Questo sono le caratteristiche:

    versione joomla 1.5.14
    PHP Version 5.2.10
    mod_rewrite installed OK
    .htaccess File OK
    Mysql 5.0.77
    Acesef Installed Version : 1.5.10

    Sono attivi:
    il mod_rewrite, acesef , friendly URL per i motori di ricerca.
    Ho rinominato l'.htaccess ( htaccess.txt -> .htaccess) e ho controllato che nel file configuartion.php la variabile "var $live_site = '.......';" fosse configurata correttamente.

    La home page del sito viene caricata correttamente.
    Le voci del menù sono formate da link interni.
    Ad esempio:
    se clicco sulla voce 'Prodotti' la URL corrispondente è
    miosito.it/prodotti

    La URL miosito.it/prodotti non corrisponde ad una cartella/file presente sul server ma è il risultato della riscrittura con Acesef.

    Dopo lo spostamento del sito i link interni sono corretti come URL
    (miosito.it/prodotti) ma restituiscono errore 404.

    Togliendo il mod_rewrite e friendly URL per i motori di ricerca i link restituiscono la pagina corretta ma naturalmente la URL è
    'miosito.it/index.php?option=....' e non
    miosito.it/prodotti.

    Credo che il problema sia legato al file .htaccess che allego di seguito:

    compress text, html, javascript, css, xml:

    AddOutputFilterByType DEFLATE text/plain
    AddOutputFilterByType DEFLATE text/html
    AddOutputFilterByType DEFLATE text/xml
    AddOutputFilterByType DEFLATE text/css
    AddOutputFilterByType DEFLATE application/xml
    AddOutputFilterByType DEFLATE application/xhtml+xml
    AddOutputFilterByType DEFLATE application/rss+xml
    AddOutputFilterByType DEFLATE application/javascript
    AddOutputFilterByType DEFLATE application/x-javascript

    Or, compress certain file types by extension:

    <Files *.html>
    SetOutputFilter DEFLATE
    </Files>

    @version $Id: htaccess.txt 10492 2008-07-02 06:38:28Z ircmaxell $

    @package Joomla

    @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.

    #####################################################

    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)

    Block out any script trying to base64_encode crap to send via URL

    RewriteCond %{QUERY_STRING} base64_encode.(.)

    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})

    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)

    php_flag register_globals off

    php_flag safe_mode off

    php_flag magic_quotes_gpc on

    RewriteBase /

    ########## Begin - Joomla! core SEF Section

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

    ########## End - Joomla! core SEF Section

    Settare gli Expires headers e cache control

    <IfModule mod_expires.c>
    ExpiresActive On
    ExpiresDefault A600
    ExpiresByType image/x-icon A2592000
    ExpiresByType application/x-javascript A604800
    ExpiresByType text/css A604800
    ExpiresByType image/gif A2592000
    ExpiresByType image/png A2592000
    ExpiresByType image/x-icon A2592000
    ExpiresByType image/jpeg A2592000
    ExpiresByType image/jpg A2592000
    ExpiresByType image/jpeg A2592000
    ExpiresByType text/plain A86400
    ExpiresByType application/x-shockwave-flash A2592000
    ExpiresByType video/x-flv A2592000
    ExpiresByType application/pdf A2592000
    ExpiresByType text/html A600

    <filesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$">
    Header set Cache-Control "max-age=2592000, public"
    Header unset Last-Modified
    </filesMatch>
    <filesMatch "\.(css)$">
    Header set Cache-Control "max-age=604800, public"
    Header unset Last-Modified
    </filesMatch>
    <filesMatch "\.(js)$">
    Header set Cache-Control "max-age=216000, private"
    Header unset Last-Modified
    </filesMatch>
    <filesMatch "\.(xml|txt)$">
    Header set Cache-Control "max-age=216000, public, must-revalidate"
    </filesMatch>
    <filesMatch "\.(html|htm|php)$">
    Header set Cache-Control "max-age=1, private, must-revalidate"
    </filesMatch>

    # Disattivare ETags
    

    Header unset ETag
    </IfModule>

    Disattivare gli ETags

    FileETag none

    Le cartelle fisiche del sito risiedono in /var/www/html/miosito/

    Avete idea di come posso risolvere questo problema???

    Grazie