2016-07-28 15 views
0

Ich habe versucht, die Anweisungen in http://alistapart.com/article/succeed auf meine Bedürfnisse anpassen - Umleiten Sie alle *. HTML-Seiten in Dispatcher.php-Datei, die die URL analysiert.

in meiner .htaccess-Datei, habe ich

RewriteRule ^(.*)\.(html)$ dispatcher.php [L,NC] 

aber alle Parameter in dispatcher.php sind leer:

echo "1. " . $REQUEST_URI . "<br />";  
    echo "2. " . $DOCUMENT_ROOT . "<br />";  
    echo "3. " . $SCRIPT_FILENAME . "<br />"; 

Warum ich diese Parameter nicht bekommen?


mittlerweile vermeide ich das Problem mithilfe der folgenden: in .htaccess -

RewriteRule ^(.*)\.(html)$ dispatcher.php?u=$1 [L,NC] 

und in dispatcher.php -

$u = $_GET['u']; // and use this $u parameter . . . 

original Probe c Ode:

RewriteRule !.(gif|jpg|png|css)$ /your_web_root/index.php # in .htaccess 



if(file_exists($DOCUMENT_ROOT.$REQUEST_URI) 
    and ($SCRIPT_FILENAME!=$DOCUMENT_ROOT.$REQUEST_URI) 
    and ($REQUEST_URI!="/")){ . . . // in index.php 
+1

'$ REQUEST_URI' oder $ _'SERVER ['REQUEST_URI']'? – Kamran

Antwort

1

$ REQUEST_URI, $ DOCUMENT_ROOT ... sind keine Variablen!

sollten Sie

$_SERVER['REQUEST_URI'] 
$_SERVER['DOCUMENT_ROOT'] 
... 

P. S. verwenden Sie können einfach:

var_dump($_SERVER);