Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it L'avatar di andreto
    Registrato dal
    Dec 2012
    Messaggi
    127

    Strano comportamento dello slash / al fondo dell'URL

    Ciao a tutti,
    ho la pagina login.php che se scritta così com'è il sito si vede bene,
    se scrivo login.php/ vedo la stessa pagina ma senza formattazione css.
    Lo stesso vale se scrivo login.php/index.php o addirittura login.php/index.php/index.php e avanti così all'infinito.


    Che strano!


    Sapete il motivo?

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,192
    Dal punto di vista di HTML/CSS non ha senso ...
    Pero` chiamando un file .php tu fai avviare un programma sul server che decodifica un codice (PHP) e genera un file html (con eventuale CSS associato) e lo invia al client (browser).

    Provo quindi a spostarti in PHP: forse li` hanno una risposta da darti
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    Utente di HTML.it L'avatar di andreto
    Registrato dal
    Dec 2012
    Messaggi
    127
    Perfetto, hai fatto bene a spostare e ti ringrazio,

    spero che qualcuno riesca a rispondermi, la cosa sembra banale ma probabilmente non lo è.

    Andrea

  4. #4
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,190
    senza il codice della pagina login.php è impossibile risponderti
    non ho neanche capito cosa succede se scrivi "miodominio.qcs/index.php/"

  5. #5
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,032
    Lo slash serve nel path a dividere i nomi delle directory, se lo usi per dividere nomi di file per PHP è una cosa da ignorare, quindi mettendo una sequenza anche infinita di nomi di file dopo quello giusto, tutto continuerà ad andare come deve, a meno che tu non usi un framework per il quale abbiano senso cose separate da slash dopo il nome del file della pagina a cui vuoi accedere (per esempio li interpreta come parametri per uno script php).

    Per il problema del CSS aggiungendo lo slash invece bisognerebbe vedere tutto il codice di index.php, così come detto da clasku.

  6. #6
    Utente di HTML.it L'avatar di andreto
    Registrato dal
    Dec 2012
    Messaggi
    127
    Quote Originariamente inviata da clasku Visualizza il messaggio
    senza il codice della pagina login.php è impossibile risponderti
    non ho neanche capito cosa succede se scrivi "miodominio.qcs/index.php/"
    Appena arrivo a casa pubblico il codice,
    nel frattempo vorrei specificare che se entro in

    http://www.miodominio.com/login.php
    oppure
    www.miodominio.com/login.php
    TUTTO OK

    Se aggiungo uno slash al fondo dell'URL
    http://www.miodominio.com/login.php/
    oppure
    www.miodominio.com/login.php/
    SI VEDE, MA SENZA FORMATTAZIONE CSS.
    (Un elemento sotto l'altro per intenderci)
    Alcune immagini ci sono, altre no.

    Da qui in poi, dopo lo slash posso scrivere qualsiasi cosa che la situazione non cambia, si vede sempre la pagina senza formattazione css

    ad esempio
    http://www.miodominio.com/login.php/pippo
    oppure
    www.miodominio.com/login.php/pippo

    http://www.miodominio.com/login.php/pluto
    oppure
    www.miodominio.com/login.php/pluto

    http://www.miodominio.com/login.php/pippo.html
    oppure
    www.miodominio.com/login.php/pluto.php

    Devo controllare i percorsi relativi, ma non so se possa essere questo la causa.
    Alla fine scrivere
    http://www.miodominio.com/login.php
    oppure
    http://www.miodominio.com/login.php/

    dovrebbe puntare sempre alla pagina login.php

    e se dopo lo slash c'è qualcosa dovrebbe dire il file non è presente sul server...

  7. #7
    Utente di HTML.it L'avatar di andreto
    Registrato dal
    Dec 2012
    Messaggi
    127
    Quote Originariamente inviata da Alhazred Visualizza il messaggio
    Lo slash serve nel path a dividere i nomi delle directory, se lo usi per dividere nomi di file per PHP è una cosa da ignorare, quindi mettendo una sequenza anche infinita di nomi di file dopo quello giusto, tutto continuerà ad andare come deve
    Infatti mettendo una sequenza anche infinita di nomi di file e anche nomi senza estensione dopo il primo slash, tutto continua ad andare allo stesso modo.
    Vedi risposta sopra.

    Quote Originariamente inviata da Alhazred Visualizza il messaggio
    a meno che tu non usi un framework per il quale abbiano senso cose separate da slash dopo il nome del file della pagina a cui vuoi accedere (per esempio li interpreta come parametri per uno script php).
    Se non ricordo male, non uso niente di ciò.
    Più tardi verifico meglio.

    Quote Originariamente inviata da Alhazred Visualizza il messaggio
    Per il problema del CSS aggiungendo lo slash invece bisognerebbe vedere tutto il codice di index.php, così come detto da clasku.
    Risposto sopra.
    Appena a casa proverò semplicemente a creare la index con una formattazione semplice semplice e fare gli stessi test su questa pagina.

    -----------------

    Potrebbe essere un errore di percorsi relativi? (io non penso, ma ditemi voi)

    Il problema per me è l'interpretazione dello slash dopo il nome file.
    Per caso può essere dovuto al file .htaccess creto ed eliminato per testare URL in modalità SEO?

    Ora però è eliminato, non vorrei che però il server nel file php.ini si sia tenuto le impostazioni.

    Se nel frattempo vi viene in mente altro, fatemelo sapere, grazie.
    Andrea
    Ultima modifica di andreto; 14-04-2016 a 10:48

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,192
    A questo punto dovresti verificare cosa arriva al browser nei due casi (con o senza slash finale nel PHP). In particolare se nel file HTML c'e` il tag <link> e se contiene gli stessi parametri.

    Poi dovresti dire se i percorsi (path) sono assoluti (iniziano con www.miodominio.com...) o relativi (non contengono il percorso completo)

    E dovresti verificare se ci sono differenze aprendolo con browser diversi (IE e` meno restrittivo rispetto al percorso inserito nei link del CSS e delle immagini)
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  9. #9
    Utente di HTML.it L'avatar di andreto
    Registrato dal
    Dec 2012
    Messaggi
    127
    Sono riuscito anche da qui a recuperare il codice della pagina login.php

    codice:
    <?php
    session_start();
    require('languages/lang.php');
    ?>
    <!doctype html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title><?php echo $lang['TITOLO_PAGINA'];?></title>
    <meta name="viewport" content="width=device-width, user-scalable=no">
    <link rel="icon" href="images/favicon.png" type="image/png" />
    <link rel="apple-touch-icon" href="images/touch-icon-iphone.png" /> 
    <link rel="apple-touch-icon" sizes="76x76" href="images/touch-icon-ipad.png" /> 
    <link rel="apple-touch-icon" sizes="120x120" href="images/touch-icon-iphone-retina.png" />
    <link rel="apple-touch-icon" sizes="152x152" href="images/touch-icon-ipad-retina.png" />
    <link href="css/general.css" rel="stylesheet" type="text/css">
    <link href="css/mod_logo.css" rel="stylesheet" type="text/css">
    <link href="css/mod_login.css" rel="stylesheet" type="text/css">
    <link href="css/mod_spot.css" rel="stylesheet" type="text/css">
    <link href="css/mod_reg.css" rel="stylesheet" type="text/css">
    <link href="css/mod_footer.css" rel="stylesheet" type="text/css">
    <script type="text/javascript" src="https://code.jquery.com/jquery-2.2.1.min.js"></script>
    <script type="text/javascript" src="js/reg.js"></script>
    </head>
    <body>
    <div id="header">
    <div id="contenuto_header">
    <?php
    require('modules/mod_logo.php');
    ?>
    <?php
    require('modules/mod_login.php');
    ?>
    </div>
    </div>
    <div id="content">
    <div id="contenuto_content">
    <?php
    require('modules/mod_spot.php');
    ?>
    <?php
    require('modules/mod_reg.php');
    ?>
    </div>
    </div>
    <div id="footer">
    <div id="contenuto_footer">
    <?php
    require('modules/mod_footer.php');
    ?>
    </div>
    </div>
    </body>
    </html>
    Attendo una vostra valutazione, grazie.
    Andrea

  10. #10
    Utente di HTML.it L'avatar di andreto
    Registrato dal
    Dec 2012
    Messaggi
    127
    Quote Originariamente inviata da Mich_ Visualizza il messaggio
    A questo punto dovresti verificare cosa arriva al browser nei due casi (con o senza slash finale nel PHP). In particolare se nel file HTML c'e` il tag <link> e se contiene gli stessi parametri.
    Senza slash
    codice HTML:
    <link rel="icon" href="images/favicon.png" type="image/png" /><link rel="apple-touch-icon" href="images/touch-icon-iphone.png" /> <link rel="apple-touch-icon" sizes="76x76" href="images/touch-icon-ipad.png" /> <link rel="apple-touch-icon" sizes="120x120" href="images/touch-icon-iphone-retina.png" /><link rel="apple-touch-icon" sizes="152x152" href="images/touch-icon-ipad-retina.png" /><link href="css/general.css" rel="stylesheet" type="text/css"><link href="css/mod_logo.css" rel="stylesheet" type="text/css"><link href="css/mod_login.css" rel="stylesheet" type="text/css"><link href="css/mod_spot.css" rel="stylesheet" type="text/css"><link href="css/mod_reg.css" rel="stylesheet" type="text/css"><link href="css/mod_footer.css" rel="stylesheet" type="text/css">
    Con slash
    codice HTML:
    <link rel="icon" href="images/favicon.png" type="image/png" /><link rel="apple-touch-icon" href="images/touch-icon-iphone.png" /> <link rel="apple-touch-icon" sizes="76x76" href="images/touch-icon-ipad.png" /> <link rel="apple-touch-icon" sizes="120x120" href="images/touch-icon-iphone-retina.png" /><link rel="apple-touch-icon" sizes="152x152" href="images/touch-icon-ipad-retina.png" /><link href="css/general.css" rel="stylesheet" type="text/css"><link href="css/mod_logo.css" rel="stylesheet" type="text/css"><link href="css/mod_login.css" rel="stylesheet" type="text/css"><link href="css/mod_spot.css" rel="stylesheet" type="text/css"><link href="css/mod_reg.css" rel="stylesheet" type="text/css"><link href="css/mod_footer.css" rel="stylesheet" type="text/css">
    Sembrano identici.


    Quote Originariamente inviata da Mich_ Visualizza il messaggio
    Poi dovresti dire se i percorsi (path) sono assoluti (iniziano con www.miodominio.com...) o relativi (non contengono il percorso completo)
    Ho postato sopra il codice.

    Quote Originariamente inviata da Mich_ Visualizza il messaggio
    E dovresti verificare se ci sono differenze aprendolo con browser diversi (IE e` meno restrittivo rispetto al percorso inserito nei link del CSS e delle immagini)
    Ho appena testato su
    Chrome e Safari su Mac,
    Chrome, Edge e IE su Win10

    Non cambia nulla, sempre in errore con lo slash

    Addirittura su IE8 in WIN XP, stessa cosa
    Ultima modifica di andreto; 14-04-2016 a 11:14

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2020 vBulletin Solutions, Inc. All rights reserved.