Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Samsung Galaxy S26 Ultra: finalmente qualcosa di nuovo
Recensione Samsung Galaxy S26 Ultra: finalmente qualcosa di nuovo
Per diversi giorni il Galaxy S26 Ultra di Samsung è stato il nostro compagno di vita. Oltre alle conferme del colosso coreano come la qualità del display e una suite AI senza rivali, arriva il Privacy Display, un unicum nel mondo smartphone. Ci sono ancora alcuni gap che non sono riusciti a colmare lato batteria e fotocamera, seppur con alcuni miglioramenti.
Diablo II Resurrected: il nuovo DLC Reign of the Warlock
Diablo II Resurrected: il nuovo DLC Reign of the Warlock
Abbiamo provato per voi il nuovo DLC lanciato a sorpresa da Blizzard per Diablo II: Resurrected e quella che segue è una disamina dei nuovi contenuti che abbiamo avuto modo di sperimentare nel corso delle nostre sessioni di gioco, con particolare riguardo per la nuova classe dello Stregone
Deep Tech Revolution: così Area Science Park apre i laboratori alle startup
Deep Tech Revolution: così Area Science Park apre i laboratori alle startup
Siamo tornati nel parco tecnologico di Trieste per il kick-off del programma che mette a disposizione di cinque startup le infrastrutture di ricerca, dal sincrotrone Elettra ai laboratori di genomica e HPC. Roberto Pillon racconta il modello e la visione
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 22-11-2009, 16:30   #1
UnknownSoldier
Member
 
Iscritto dal: Aug 2008
Messaggi: 210
[Apache|PHP] Problema con mod rewrite

Salve.
Ho un problema con il mod rewrite di apache che non riesco proprio a capire e quindi a risolvere. Dunque, ho una regola di riscrittura:

Codice:
RewriteRule ^(.*)_(.*)_(.*).html$ index.php?c=$1&idcol=$2&lang=$3 [L]
Il problema è che se ad esempio vado ad utilizzare il nuovo link in PHP in questo modo: visualizzatipi_1_it.html, i parametri get non vengono passati correttamente!

Infatti $_GET['c'] andrà a valere "visualizzatipi_1", $_GET['idcol'] sarà nullo e $_GET['lang'] sarà "it".

Perchè la variabile di parametro "c" comprende più del dovuto?? Dov'è che sbaglio?

Spero che ci sia qualcuno che possa aiutarmi, sto impazzendo
Grazie mille
UnknownSoldier è offline   Rispondi citando il messaggio o parte di esso
Old 22-11-2009, 17:17   #2
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
la wildcard . (punto) fa il match anche con l'underscore.

prova con ^([^_]*)_([^_]*)_([^_]*).html oppure una un matcher non "greedy"
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 22-11-2009, 18:35   #3
UnknownSoldier
Member
 
Iscritto dal: Aug 2008
Messaggi: 210
Quote:
Originariamente inviato da kingv Guarda i messaggi
la wildcard . (punto) fa il match anche con l'underscore.

prova con ^([^_]*)_([^_]*)_([^_]*).html oppure una un matcher non "greedy"
Purtroppo il risultato è lo stesso... cosa intendi con matcher non "greedy"?
UnknownSoldier è offline   Rispondi citando il messaggio o parte di esso
Old 22-11-2009, 22:20   #4
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da UnknownSoldier Guarda i messaggi
Purtroppo il risultato è lo stesso... cosa intendi con matcher non "greedy"?
non importa, la regexp è giusta:

Codice:
$ echo visualizzatipi_1_it.html | perl -npe 's/^(.*)_(.*)_(.*).html$/index.php?
c=$1&idcol=$2&lang=$3/'
index.php?c=visualizzatipi&idcol=1&lang=it
abilita il log di mod rewrite :

RewriteLog /tmp/quelchevuoi
RewriteLogLevel 3

e posta l'output di una chiamata
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 23-11-2009, 09:24   #5
UnknownSoldier
Member
 
Iscritto dal: Aug 2008
Messaggi: 210
Quote:
Originariamente inviato da kingv Guarda i messaggi
non importa, la regexp è giusta:

Codice:
$ echo visualizzatipi_1_it.html | perl -npe 's/^(.*)_(.*)_(.*).html$/index.php?
c=$1&idcol=$2&lang=$3/'
index.php?c=visualizzatipi&idcol=1&lang=it
abilita il log di mod rewrite :

RewriteLog /tmp/quelchevuoi
RewriteLogLevel 3

e posta l'output di una chiamata
Scusa ma dov'è che devo digitare quel codice? Ho provato a metterlo nel file .htaccess ma se apro una qualsiasi pagina mi viene lanciato l'errore 500 o_O
UnknownSoldier è offline   Rispondi citando il messaggio o parte di esso
Old 23-11-2009, 09:51   #6
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da UnknownSoldier Guarda i messaggi
Scusa ma dov'è che devo digitare quel codice? Ho provato a metterlo nel file .htaccess ma se apro una qualsiasi pagina mi viene lanciato l'errore 500 o_O
RewriteLog e RewriteLogLevel non possono stare in htaccess ma solo nella configurazione principale del server o in un virtual host.

Se hai accesso solo all'htaccess non puoi abilitarli
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 23-11-2009, 09:55   #7
UnknownSoldier
Member
 
Iscritto dal: Aug 2008
Messaggi: 210
Quote:
Originariamente inviato da kingv Guarda i messaggi
RewriteLog e RewriteLogLevel non possono stare in htaccess ma solo nella configurazione principale del server o in un virtual host.

Se hai accesso solo all'htaccess non puoi abilitarli
Ma io sto lavorando in locale, quindi in qualche modo potrei modificare questa impostazione no? Solo che non so come
UnknownSoldier è offline   Rispondi citando il messaggio o parte di esso
Old 23-11-2009, 10:06   #8
SerMagnus
Senior Member
 
L'Avatar di SerMagnus
 
Iscritto dal: Sep 2005
Messaggi: 1400
nel file di configurazione di apache
SerMagnus è offline   Rispondi citando il messaggio o parte di esso
Old 23-11-2009, 10:13   #9
UnknownSoldier
Member
 
Iscritto dal: Aug 2008
Messaggi: 210
Quote:
Originariamente inviato da SerMagnus Guarda i messaggi
nel file di configurazione di apache
Sì ma in che posizione di preciso?
UnknownSoldier è offline   Rispondi citando il messaggio o parte di esso
Old 23-11-2009, 11:18   #10
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da UnknownSoldier Guarda i messaggi
Sì ma in che posizione di preciso?
su che sistema?
su linux dipende dalle distribuzioni, su quelle stile red hat è /etc/httpd/conf/httpd.conf
Su Windows conf\httpd.conf nella directory di installazione
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 23-11-2009, 11:50   #11
UnknownSoldier
Member
 
Iscritto dal: Aug 2008
Messaggi: 210
Quote:
Originariamente inviato da kingv Guarda i messaggi
su che sistema?
su linux dipende dalle distribuzioni, su quelle stile red hat è /etc/httpd/conf/httpd.conf
Su Windows conf\httpd.conf nella directory di installazione
Non intendevo questo, il file di configurazione so dov'è, solo che non so in quale punto del file devo inserire quel codice.
UnknownSoldier è offline   Rispondi citando il messaggio o parte di esso
Old 23-11-2009, 14:35   #12
UnknownSoldier
Member
 
Iscritto dal: Aug 2008
Messaggi: 210
Ho provato con un'altra riscrittura, diversa dal problema precedente:

RewriteRule ^(.*).html$ index.php?c=$1 [L]

Il camuffamento dei link funziona bene, nel senso che se ad esempio uso login.html, si viene correttamente reindirizzati a index.php?c=login

MA: quando accedo alla mia directory (es. http://localhost/myproject), viene effettuata una stranissima richiesta ad index.php con parametro "c" uguale a "index".

Ancora più strano poichè nella mia directory è presente anche index.html, che dovrebbe essere letta per prima.

Insomma, è così tanto difficile usare questo maledetto mod rewrite?
Io non capisco come risolvere questi problemi...
UnknownSoldier è offline   Rispondi citando il messaggio o parte di esso
Old 23-11-2009, 15:33   #13
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
quella che vedi è una richiesta generata da mod_autoindex che per listare il contenuto di una directory crea una subrequest per index.html che viene poi intercettata dalla regola di rewrite che hai impostato.
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 23-11-2009, 15:33   #14
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da UnknownSoldier Guarda i messaggi
Non intendevo questo, il file di configurazione so dov'è, solo che non so in quale punto del file devo inserire quel codice.
dove vuoi, nella configurazione principale o all'interno della defiinzione di uno specificoi virtual host.
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 23-11-2009, 17:53   #15
UnknownSoldier
Member
 
Iscritto dal: Aug 2008
Messaggi: 210
Grazie ho risolto, il problema è che prima di quelle regole, ce n'erano altre più generiche e quindi venivano considerate quelle e basta
UnknownSoldier è offline   Rispondi citando il messaggio o parte di esso
Old 23-11-2009, 18:06   #16
UnknownSoldier
Member
 
Iscritto dal: Aug 2008
Messaggi: 210
Raga vorrei un consiglio. E' la prima volta che uso in modo massiccio il mod rewrite, e so che serve maggiormente per avere più successo nei motori di ricerca. Quindi è inutile riscrivere i link accessibili nelle pagine che richiedono il login giusto?? Dato che un motore di ricerca non può avere accesso... vorrei una conferma ^^
UnknownSoldier è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Samsung Galaxy S26 Ultra: finalmente qualcosa di nuovo Recensione Samsung Galaxy S26 Ultra: finalmente ...
Diablo II Resurrected: il nuovo DLC Reign of the Warlock Diablo II Resurrected: il nuovo DLC Reign of the...
Deep Tech Revolution: così Area Science Park apre i laboratori alle startup Deep Tech Revolution: così Area Science P...
HP OMEN MAX 16 con RTX 5080: potenza da desktop replacement a prezzo competitivo HP OMEN MAX 16 con RTX 5080: potenza da desktop ...
Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta Recensione Google Pixel 10a, si migliora poco ma...
Spotify introduce 'Taste Profile': il co...
Sole e pioggia insieme: il nuovo pannell...
AWS e Cerebras uniscono le forze: nuova ...
Windows 11: accesso al drive C: bloccato...
BYD pronta a comprare un marchio storico...
Windows 11 si prepara ai monitor oltre i...
Apple avrebbe fissato un target di vendi...
Ultimi giorni per sfruttare le Offerte d...
I migliori smartphone in offerta ora su ...
Le migliori TV delle Offerte di Primaver...
Uno dei robot più avanzati del 2025 crol...
Robot aspirapolvere con stazione automat...
Il nuovo top di gamma compatto di OPPO n...
Nilox aggiorna la sua gamma di fat e-bik...
Meta valuta tagli fino al 20% della forz...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 18:42.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v