2016-03-29 8 views
0

Ich versuche, die HTML aus der URL zu entfernen, so dass www.example.com/page.html wäre www.example.com/page. Ich habe versucht, mit diesem Code mit .htaccess:Entfernen Sie .html von der URL mit .htaccess

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^\.]+)$ $1.php [NC,L] 

Mein HTML-Code ist einfach: <a href = "page">link</a>

Das hat wie jedes Mal nicht, ich auf den Link klicken, wird eine Fehlerseite erscheint

+0

Dieses Q & A sollte helfen. [HTML-Erweiterung von URL entfernen] (http://stackoverflow.com/questions/5730092/how-to-remove-html-from-url) – lovermanthing

+0

Ich fand die richtige Antwort auf dieser Seite. Vielen Dank –

Antwort

0

So etwas sollte funktionieren.

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)\.html$ /$1 [L,R=301] 
1

Ich glaube, Sie hinzufügen möchten, und nicht entfernen .html (umschreiben page-page.html)
Sie verwenden können:

Options -MultiViews 
RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{DOCUMENT_ROOT}/$1\.html -f 
RewriteRule ^(.+)/?$ $1.html [L] 
0

fand ich die Antwort auf - How to remove .html from URL. Dies war das einzige .htaccess-Skript, das funktionierte:

RewriteEngine on 
RewriteBase/
RewriteCond %{http://www.proofers.co.uk/new} !(\.[^./]+)$ 
RewriteCond %{REQUEST_fileNAME} !-d 
RewriteCond %{REQUEST_fileNAME} !-f 
RewriteRule (.*) /$1.html [L] 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^.]+)\.html\ HTTP 
RewriteRule ^([^.]+)\.html$ http://www.proofers.co.uk/new/$1 [R=301,L] 
Verwandte Themen