2016-08-08 41 views
0

ich meine PHP-Anwendungen aufURL-Rewriting Ich will nicht index.php in URL zeigen

http://localhost:8085/

Meine Verzeichnisstruktur ist wie folgt ausgeführt werden: C: \ wamp \ www \ Website

Ich habe die .htaccess-Datei im Website-Ordner platziert.

<IfModule mod_rewrite.c> 
#Turn on the RewriteEngine 
RewriteEngine On 
RewriteBase /website/ 
#Rules 
RewriteRule ^(.*)$ index.php 
</IfModule> 

Wann immer ich auf der index.php klicken sie mich auf die Seite http://localhost:8085/ nach Hause nimmt, die falsch ist, ich zu http://localhost:8085/website bekommen möchten.

Bitte leite mich

+0

eine andere direkt zugreifen test Sie können es tun, um diese .htaccess umzubenennen und klicken Sie dann erneut auf den Link, um zu sehen, ob das Problem behoben ist oder nicht. – anubhava

Antwort

2

Sie benötigen website vor index.php gefallen,

RewriteRule ^(.*)$ /website/index.php 

aktualisiert, hinzuzufügen versuchen, den vollständigen Code,

RewriteEngine On 
RewriteBase /website/ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /website/index.php [L] 

Hinweis: Sie benötigen Verwenden Sie http://localhost:8085/website/ als Basis-URL in jedem Link, der auf Ihrer Website verwendet wird, andernfalls wird er aufumgeleitet wie 10,

<a href="http://localhost:8085/website/index.php">Home page</a> 

Alternativ verwenden Sie keine / vor jedem href und Ihre Dateinamen verwenden, wie es beispielsweise ist,

<a href="index.php">Home page</a> 

Wenn Sie <a href="/index.php">Home page</a> verwenden wird es auf Indexseite umleiten URL http://localhost:8085/

Sie können einen virtuellen Host machen es https://httpd.apache.org/docs/current/vhosts/name-based.html

+0

Nach dieser Änderung Website öffnet sich nicht gibt es interne Serverfehler –

+0

Da Dänisch 'RewriteBase/Website /' verwendet, gibt es keine Notwendigkeit, den vollständigen Pfad von '/ website/index.php' in der Regel zu verwenden. – anubhava

+0

Immer noch das gleiche Problem, die Website funktioniert gut, aber es richtet mich um localhost –