2017-01-13 3 views
1

ich meine htacess Datei in einem Verzeichnis abgelegt haben, wo ich diese ähnlicheEinstellungen, damit die Datei htacess funktionieren kann?

C:\wamp\www\test\index.php

C:\wamp\www\test\h1.php

C:\wamp\www\test\h2.php und

C:\wamp\www\test\default.htacess

ich einen Code verwenden möchten in dieser Datei, wenn Benutzer URL mit 1 Parameter eingibt es leitet es h1.php und wenn 2 dann h2.php aber es gibt Fehler zum Beispiel

http://localhost:8080/test/first

sollte http://localhost:8080/test/h1.php redirtect aber sagt

nicht gefunden

Die angeforderte URL/test/first wurde auf diesem Server nicht gefunden.

meine .htaccess-Code ist

php_value allow_url_fopen On 

RewriteEngine On 
RewriteRule ^([\w-]+)/?$ h1.php?parent=$1 [QSA,L] 
RewriteRule ^([\w-]+)/([\w-]+)/?$ h2.php?parent=$1&child=$2 [QSA,L] 
RewriteRule ^([\w-]+)/([\w-]+)/([\w-]+)/?$ index.php?parent=$1&child=$2&subchild=$3 [QSA,L] 

1-Tell me i-Datei an die richtige Stelle

2-das ist httpd.conf Einstellung gesetzt haben ich habe

<Directory /var/www/> 
    Options Indexes FollowSymLinks 
    AllowOverride All 
    Allow from all 
    RewriteEngine on 

</Directory> 

Jetzt habe ich keine php.ini Datei geändert ich gehe richtig, wie man das macht

+0

Haben Sie versucht, 'default.htacess' in' .htaccess' umzubenennen (zwei _c_s und ohne _default_)? Vergessen Sie nicht, Apache neu zu starten, nachdem Sie Änderungen an 'httpd.conf' vorgenommen haben. Sie müssen Ihre 'php.ini' nicht ändern, damit htaccess funktioniert. –

+0

Fehler 'Sie müssen einen Dateinamen eingeben' nur für '.htacess' –

+0

Das ist eine Windows-Einschränkung, wenn Sie den Namen über Explorer ändern. Ändern Sie es stattdessen durch CMD. Der Dateiname muss nur '.htaccess' lauten oder er wird nicht von Apache gelesen oder verwendet. –

Antwort

0

Benennen Sie den Dateinamen von default.htaccess in .htaccess

Und versuchen Sie, den Server neu zu starten, und löschen Sie den Cache, damit er funktioniert.

+0

kannst du mir auch sagen ob ich einen fixen Parameter wie' dome' übergebe es an 'h1.php' umleite wie –

+0

Versuche das oben auf hinzuzufügen alle Regeln 'RewriteRule^h1.php h1.php? parent = dome [QSA, L]' – Manikiran

+0

nein funktioniert nicht angenommen, im Falle von 'dome' es redirect zu h3.php, aber wenn irgendein anderer einzelner Parameter kommt es umleiten zu h1 .php –

Verwandte Themen