Back to top

Autore Topic: xxxxxxx e mod_rewrite  (Letto 1616 volte)

Offline stefus85

  • Nuovo arrivato
  • *
  • Post: 40
    • Mostra profilo
xxxxxxx e mod_rewrite
« il: 20 Ott 2010, 13:22:24 »
Ciao a tutti,
sto cercando di gestire le url del mio sito in joomla 1.5.20 in modo da renderle il più leggibili possibile. Di seguito alcune info utili alla risoluzione del mio problema:
- server domestico Ubuntu 10.10 + Apache2 + Php5 + Mysql
- plugin 'System - Sef' di default in joomla attivato
- configurazione globale joomla-->configurazione seo-->le tre opzioni tutte a 'sì'
- file 'htaccess.txt' rinominato in '.htaccess'
- plugin 'System - xxxxxxf' attivato
- componente 'xxxxxx' installato e attivato
- impostazione 'modalità riscrivibile' in xxxxx settata a: "con .htaccess (mod_rewrite)"

Di seguito il contenuto di .htaccess:

Codice: [Seleziona]
##
# @version $Id: htaccess.txt 14401 2010-01-26 14:10:00Z louis $
# @package Joomla
# @copyright Copyright (C) 2005 - 2010 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!
#
## Deny access to extension xml files (uncomment out to activate)
#<Files ~ "\.xml$">
#Order allow,deny
#Deny from all
#Satisfy all
#</Files>
## End of deny access to extension xml files
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 /


########## 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|/[^.]*)$  [NC]
RewriteRule (.*) index.php
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
#
########## End - Joomla! core SEF Section

Il problema è che impostando il mod_rewrite in joomla a 'no', in tutte le url trovo la porzione '/index.php/', cosa sgradevole. Se invece imposto a 'sì' e il resto nel modo descritto sopra, cliccando su ogni articolo ottengo l'errore 404 Not found. Ho anche modificato diverse volte il .htaccess ma pur modificando alcune righe non cambia nulla, stesso errore.
Mi date una mano? Potrebbe essere una questione di configurazione del web server Apache?
Grazie
« Ultima modifica: 20 Ott 2010, 13:25:32 da tomtomfive »

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • *****
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:xxxxxxx e mod_rewrite
« Risposta #1 il: 20 Ott 2010, 13:29:12 »
Ciao stefus85 e benvenuto nel forum joomla.it

Purtroppo quello citato è un componente a tutti gli effetti commerciale e pertanto ho dovuto editarne i riferimenti perchè in questo forum vige una sola regola: vietato citare e dare supporto a servizi ed estensioni commerciali, se il tuo problema deriva da quel componente visto che l'hai pagato ti prego di rivolgerti all'assistenza del produttore stesso. Grazie per la comprensione

Offline stefus85

  • Nuovo arrivato
  • *
  • Post: 40
    • Mostra profilo
Re:xxxxxxx e mod_rewrite
« Risposta #2 il: 20 Ott 2010, 13:38:24 »
Ops  ::)
Chiedo venia.
Il fatto è che purtroppo ho letto la documentazione di quel componente e configurato il tutto senza risolvere nulla.
Ho visto in giro che alcune persone hanno risolto il mio problema di visibilità della stringa /index.php/ nella url, senza utilizzare altri componenti o moduli o plugin, oltre quello "Systema - sef" di default in joomla, semplicemente modificando il file '.htaccess'. Ma pur seguendo svariate configurazioni non ne esco. E ora neppure con quel particolare componente in cui confidavo. È per questo che credo che il problema sia da qualche altra parte e non in joomla.
Ogni dritta sarà ben accetta.
Grazie

Offline stefus85

  • Nuovo arrivato
  • *
  • Post: 40
    • Mostra profilo
Re:xxxxxxx e mod_rewrite
« Risposta #3 il: 20 Ott 2010, 15:58:46 »
Il problema come sospettavo era nel settaggio di Apache.
Ho risolto così:

aprire un terminale e dare in sequenza:
Codice: [Seleziona]
cd /etc/apache2/mods-enabled
sudo ln -s /etc/apache2/mods-available/rewrite.load rewrite.load
sudo /etc/init.d/apache2 restart

A questo punto il mod_rewrite è abilitato sul web server.

Poi dare sempre da terminale:
Codice: [Seleziona]
sudo gedit /etc/apache2/sites-available/default
si aprirà l'editor di testo gedit; cercare alla riga 11
'AllowOverride None'
e sostituire con
'AllowOverride all'

Riavviare il server e da questo momento la stringa /index.php/ non apparirà più nella url.
Spero serva a qualcuno.
Ciao.

 



Web Design Bolzano Kreatif