• Bannato User Attivo

    @Tuonorosso said:

    Ciao ragazzi,
    partendo da questo link http://www.computerbb.org/about2261.html ho trovato questo mods.

    Il fatto è che proprio non mi funziona. Le pagine mi rimangono sempre in .php?par=X invece che trasformarsi in xxxxx-vt-X.htm

    Ecco il codice:

    ># 
    #-----[ OPEN ]------------------------------------------ 
    # 
     
    includes/page_header.php 
     
    # 
    #-----[ FIND ]------------------------------------------ 
    # 
     
    $template->set_filenames(array( 
        'overall_header' => ( empty($gen_simple_header) ) ? 'overall_header.tpl' : 'simple_header.tpl') 
    ); 
     
    # 
    #-----[ AFTER, ADD  ]------------------------------------------ 
    # 
     
    ob_start(); 
     
     
    function make_url_friendly($url) 
    { 
     
        $url = strtolower($url); 
     
        $find = array(' ', 
                '&', 
                '\r\n', 
                '\n', 
                '/', 
                '\\', 
                '+'); 
     
        $url = str_replace ($find, '-', $url); 
     
        $find = array(' ', 
                'é', 
                'è', 
                'ë', 
                'ê'); 
     
        $url = str_replace ($find, 'e', $url); 
     
        $find = array(' ', 
                'ó', 
                'ò', 
                'ô', 
                'ö'); 
     
        $url = str_replace ($find, 'o', $url); 
     
        $find = array(' ', 
                'á', 
                'à', 
                'â', 
                'ä'); 
     
        $url = str_replace ($find, 'a', $url); 
     
        $find = array(' ', 
                'í', 
                'ì', 
                'î', 
                'ï'); 
     
        $url = str_replace ($find, 'i', $url); 
     
        $find = array(' ', 
                'ú', 
                'ù', 
                'û', 
                'ü'); 
     
        $url = str_replace ($find, 'u', $url); 
     
        $find = array('/[^a-z0-9\-<>]/', 
                '/[\-]+/', 
                '/<[^>]*>/'); 
     
        $repl = array('', 
                '-', 
                ''); 
     
        $url =  preg_replace ($find, $repl, $url); 
     
        return $url; 
     
    } 
     
     
    function rewrite_urls($content) 
    { 
     
        function if_query($amp) 
        { 
     
            if($amp != '') 
            { 
                return '?'; 
            } 
     
        } 
     
        $url_in = array('/(?<!\/)viewforum.php\?f=([0-9]+)((&amp;)|(&)){0,1}([^>]+>)(.*? )<\/a>/e', 
                '/(?<!\/)viewtopic.php\?p=([0-9]+)((&amp;)|(&)){0,1}([^>]+>)(.*?)<\/a> /e', 
                '/(?<!\/)viewtopic.php\?t=([0-9]+)((&amp;)|(&)){0,1}([^>]+>)(.*?)<\/a> /e'); 
     
        $url_out = array("make_url_friendly('\\6') . '-vf\\1.html' . if_query('\\2') . stripslashes('\\5\\6') . '</a>'", 
                "make_url_friendly('\\6') . '-vp\\1.html' . if_query('\\2') . stripslashes('\\5\\6') . '</a>'", 
                "make_url_friendly('\\6') . '-vt\\1.html' . if_query('\\2') . stripslashes('\\5\\6') . '</a>'"); 
     
        $content = preg_replace($url_in, $url_out, $content); 
     
        return $content; 
     
    }    
     
    # 
    #-----[ OPEN ]------------------------------------------ 
    # 
     
    includes/page_tail.php 
     
    # 
    #-----[ FIND ]------------------------------------------ 
    # 
     
    if ( $do_gzip_compress ) 
    { 
        // 
        // Borrowed from php.net! 
        // 
        $gzip_contents = ob_get_contents(); 
        ob_end_clean(); 
     
        $gzip_size = strlen($gzip_contents); 
        $gzip_crc = crc32($gzip_contents); 
     
        $gzip_contents = gzcompress($gzip_contents, 9); 
        $gzip_contents = substr($gzip_contents, 0, strlen($gzip_contents) - 4); 
     
        echo "\x1f\x8b\x08\x00\x00\x00\x00\x00"; 
        echo $gzip_contents; 
        echo pack('V', $gzip_crc); 
        echo pack('V', $gzip_size); 
    } 
     
    # 
    #-----[ REPLACE, WITH  ]------------------------------------------ 
    # 
     
    if ( $do_gzip_compress ) 
    { 
        // 
        // Borrowed from php.net! 
        // 
        $gzip_contents = ob_get_contents(); 
        ob_end_clean(); 
        echo rewrite_urls($contents); 
        global $dbg_starttime; 
     
        $gzip_size = strlen($gzip_contents); 
        $gzip_crc = crc32($gzip_contents); 
     
        $gzip_contents = gzcompress($gzip_contents, 9); 
        $gzip_contents = substr($gzip_contents, 0, strlen($gzip_contents) - 4); 
     
        echo "\x1f\x8b\x08\x00\x00\x00\x00\x00"; 
        echo $gzip_contents; 
        echo pack('V', $gzip_crc); 
        echo pack('V', $gzip_size); 
    } 
    else 
    { 
        $contents = ob_get_contents(); 
        ob_end_clean(); 
        echo rewrite_urls($contents); 
        global $dbg_starttime; 
    } 
    >```
     
    .HTACCESS
     
    Options +FollowSymlinks 
     
    

    RewriteEngine On
    #this may cause isues with subdirs and so I have not enabled it.
    #RewriteBase /

    RewriteRule [.]-vf([0-9]) viewforum.php?%{QUERY_STRING}&f=$1
    RewriteRule [.]-vp([0-9]) viewtopic.php?%{QUERY_STRING}&p=$1
    RewriteRule [.]-vt([0-9]) viewtopic.php?%{QUERY_STRING}&t=$1

    I dubbi che mi sono venuti sono 2:

    1. Avevo dei mods in queste 2 pagine, allora ho provato anche con page_header e page_tail presi vergini ma non funziona lo stesso
    2. Forse il mio problema è che ho l'indirizzo con sottodominio http: //forum.recensiamo.it , ma anche qui, provando a digitare un indirizzo con finale .htm la pagina si vede. Il problema sembra dunque nella scrittura degli url in maniera corretta. (da qui che il .htaccess sia corretto)

    Grazie a chiunque possa aiutarmi a comprendere il codice 😉

    PS: credo che il succo stia nel page_tail.phpHo applicato passo passo la modifica su un forum con template subsilver e senza altre mod rilevanti.

    Non mi è cambiato nulla. I link mi appaiono ancora come viewtopic.php?

    dove devo andare a modificare per far creare i link con in essi il titolo del topic :mmm:


  • Super User

    Un consiglio: ma perché, anziché perdere il sonno per cercare di far funzionare questi mod/hack per phpBB, non passate a un forum che abbia gli URL spider-friendly built-in? [url=http://www.simplemachines.org/]SMF è open-source, accessibile e mi pare che funzioni benissimo (potete vedere la 1.1 RC2 in azione sul [url=http://forum.joomla.org/]forum di Joomla.org). 🙂


  • Super User

    chissá, probabilmente perché, come me, non l'avevano mai sentito nominare 😄

    certo che [url=http://www.simplemachines.org/about/features.php]la lista di features é abbastanza indicativa... 😮


  • Super User

    @must said:

    chissá, probabilmente perché, come me, non l'avevano mai sentito nominare 😄
    Io lo sto "tenendo d'occhio" praticamente dalla nascita, e mi sembra davvero molto ben fatto: soltanto dal punto di vista dell'accessibilità, non c'è proprio confronto con phpBB, che però ha dalla sua il fatto di essere molto diffuso.


  • Bannato User Attivo

    @ArkaneFactors said:

    Un consiglio: ma perché, anziché perdere il sonno per cercare di far funzionare questi mod/hack per phpBB, non passate a un forum che abbia gli URL spider-friendly built-in? [url=http://www.simplemachines.org/]SMF è open-source, accessibile e mi pare che funzioni benissimo (potete vedere la 1.1 RC2 in azione sul [url=http://forum.joomla.org/]forum di Joomla.org). :)Sono masochista.
    Proprio non riesco a farlo andare...
    Mi d questo errore:
    Fatal error: Cannot redeclare if_query() (previously declared in /home/mhd-01/www.forumlibri.com/htdocs/forum/includes/page_header.php:146) in /home/mhd-01/www.forumlibri.com/htdocs/forum/includes/page_header.php on line 146

    che è proprio dove chiama la funzione:

     function if_query&#40;$amp&#41; 
        &#123; 
    
            if&#40;$amp != ''&#41;
    ``` :x  :x  :x 
    
    E poi io AMO il phpbb :D

  • Super User

    @fabioski said:

    Sono masochista.
    😄

    Fatal error: Cannot redeclare if_query&#40;&#41; &#40;previously declared in /home/mhd-01/www.forumlibri.com/htdocs/forum/includes/page_header.php&#58;146&#41; in /home/mhd-01/www.forumlibri.com/htdocs/forum/includes/page_header.php on line 146
    

    Hai incluso due (o più) volte page_header.php. 🙂

    Consiglio: usa [url=http://php.net/require_once]require_once per gli include. 😉


  • Bannato User Attivo

    @ArkaneFactors said:

    Fatal error: Cannot redeclare if_query&#40;&#41; &#40;previously declared in /home/mhd-01/www.forumlibri.com/htdocs/forum/includes/page_header.php&#58;146&#41; in /home/mhd-01/www.forumlibri.com/htdocs/forum/includes/page_header.php on line 146
    

    Hai incluso due (o più) volte page_header.php. 🙂

    Consiglio: usa [url=http://php.net/require_once]require_once per gli include. ;)Non ho modificato nulla del phpbb. E non so "metterci" le mani 😢
    Non so dove venga inclusa questa pageheader... 😢 😢 😢


  • Super User

    @fabioski said:

    Non ho modificato nulla del phpbb.
    Come sarebbe, "Non ho modificato nulla"? Sopra hai scritto:
    @fabioski said:
    Ho applicato passo passo la modifica


  • Bannato User Attivo

    Ops, volevo dire che oltre a quella modifica descritta nella mod non ho fatto altre modifiche.
    Cioè io ho installato il phpbb, ho cambiato 3 righe nel file sessions.php e poi ho applicato la modifica.
    Il template è lo Subsilver.
    :mmm: E nonostante ciò non mi funziona :mmm:


  • Super User

    Beh, almeno consolati: [url=http://snipurl.com/pvvy]sei in buona compagnia. 😉

    Evidentemente quel mod ha un problema con la versione di phpBB che stai usando tu.

    L'errore sembra verificarsi nel footer (page_tail.php). Ora cerco di capire perché. 😉


  • Super User

    Uhm, ho dato un'occhiata al codice di phpBB, ma purtroppo mi riesce molto difficile capire che cosa causa quell'errore con le scarse informazioni che ho a disposizione. Guardando le pagine indicizzate da Google, comunque, il problema sembra verificarsi solo su /profile.php e /search.php: è il tuo caso? Se sì, in vari include (ad es. in includes/usercp_register.php) vedo questa linea che potrebbe essere la "colpevole":

    	include&#40;$phpbb_root_path . 'includes/page_header.'.$phpEx&#41;;
    

    Con ogni probabilità, quando quella linea viene eseguita, page_header.php è già stato incluso da qualche parte (dove? non lo so :D). Abbastanza strano il fatto che l'errore si verifichi dopo che il footer è già stato inviato al browser (se guardi il sorgente delle pagine indicizzate da Google, vedrai che l'errore di PHP viene inserito dopo il tag di chiusura </html>).

    Sicuramente il bug potrebbe essere aggirato (non risolto) usando include_once() (o require_once()) al posto di include(), come suggerito sopra. Ma questo implica quantomeno un search&replace su tutti i file sotto /include. Vedi tu se è il caso.

    Un'ultima domanda: che cos'hai modificato in sessions.php, esattamente?


  • Bannato User Attivo

    @ArkaneFactors said:

    Un'ultima domanda: che cos'hai modificato in sessions.php, esattamente?
    Grazie infinite AF, sto anche io :arrabbiato: ma ho deciso che lascio perdere e provo altri mods.

    Modificai questa cosuccia:

    includes/sessions.php 
    
    # 
    #-----&#91; FIND &#93;------------------------------------------ 
    # 
    
    $SID = 'sid=' . $session_id; 
    
    # 
    #-----&#91; REPLACE WITH &#93;------------------------------------------ 
    # 
    
    if &#40; $userdata&#91;'session_user_id'&#93; != ANONYMOUS &#41;&#123; 
       $SID = 'sid=' . $session_id; 
    &#125; else &#123; 
       $SID = ''; 
    &#125; 
    
    

    Buone cose,
    fabioski 🙂


  • Super User

    Uhmmm... Ultimo tentativo prima di desistere: prova a [url=http://www.phpbb.com/kb/article.php?article_id=12]disattivare il debug mode. Forse è quello a causare la doppia inclusione di page_header.php (vedi il sorgente HTML di [url=http://www.planetewebmaster.com/forum/search.php?search_id=unanswered]questa pagina).


  • Bannato User Attivo

    @Jantima said:

    Qui c'è Il file zip, che contiene tra l'altro Il mod in questione, che non credo sia lo stesso, magari è simile, e che potete visionare qui
    Ho usato quello per google contenuto in quel file.

    Ho dovuto modificare una cosa nell' .htaccess mettendo come cartella non
    /
    ma
    /forum/
    ed ora dopo 1000 pugni sul pc (dati molto piano...) funziona:
    Libri

    Adesso però vorrei capire come posso dare alla home page del sito i link alle ultime discussioni con gli stessi link :mmm:


  • Super User

    @fabioski said:

    funziona:
    Libri
    Molto belli i nuovi URL! 🙂


  • Bannato User Attivo

    @ArkaneFactors said:

    Molto belli i nuovi URL! :)Grandioso Fattori Arkani, tu che vivi agli antipodi... Mi dai una dritta di come posso "ricostruirli per creare i link agli ultimi topcs dalla home peigg?


  • Super User

    A grandi linee: dovresti guardare il codice utilizzato per generare i link sulla home page, e intervenire lì con modifiche analoghe a quelle che hai apportato al resto di phpBB.


  • User Attivo

    potresti mettere in un post, per favore, i passaggi dell'installazione definitivi per far funzionare il mod ?


  • Super User

    @alive said:

    potresti mettere in un post, per favore, i passaggi dell'installazione definitivi per far funzionare il mod ?

    1. A chi dici? (a me? spero di no)
    2. Di quale mod parli? Di quello di Tuonorosso? O di quello di fabiòski?

  • User Attivo

    chiedevo a fabioski riguardo il mod rewrite che lui è riuscito a far funzionare !