2016-07-27 18 views
1

Nun, ich verwende .htaccess Regeln, um meine Website URL-Struktur zu bearbeiten. Jetzt habe ich folgende URL:Wie Fehlermeldung mit. Htaccess angezeigt wird Wenn URL falsch ist?

http://localhost/aponit/dev/zones 

Diese URL ist für zones.php Seite, um Formulardaten zu bearbeiten. Nach dem Klick auf Bearbeiten Link wird es zu diesem Link gehen:

http://localhost/aponit/dev/zones/update/55 

Dieser Link ist auf update.php Seite offen.

Nun, wenn ich von dieser URL folgenden Teil entfernen

/55 or date/55 

dann ist es zeigt mir Fehlermeldung mit entsprechender Fehlerseite. Das ist in Ordnung.

Aber wenn ich update/55 aus der URL entfernen dann url so aussehen:

http://localhost/aponit/dev/zones/ (note the forward slash at the end) 

dann ist es ruft zones.php Seite und Sheet gebrochen

aber ich möchte eine Fehlerseite zB um zu zeigen, : nicht gefunden.php Seite. Wie kann ich dies mit .htaccess tun?

Meine .htaccess Regeln:

Options -MultiViews 
ErrorDocument 404 http://localhost/aponit/dev/not-found.php 
ErrorDocument 500 http://localhost/aponit/dev/404.php 
RewriteEngine on 

RewriteRule ^(?:zones/)?update/(\w+)/?$ update.php?z=$1 [L,QSA,NC] 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}.php -f 
RewriteRule ^(.+?)/?$ $1.php [L] 

Antwort

1

Sie verwenden können:

Options -MultiViews 
ErrorDocument 404 /aponit/dev/not-found.php 
ErrorDocument 500 http://localhost/aponit/dev/404.php 
RewriteEngine on 

RewriteRule ^zones/$ - [NC,L,R=404] 

RewriteRule ^(?:zones/)?update/(\w+)/?$ update.php?z=$1 [L,QSA,NC] 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}.php -f 
RewriteRule ^(.+?)/?$ $1.php [L] 
+0

Upps. in Zonen Seite zeigt es mir nicht gern Fehlermeldung –

+0

aber zones.php Seite existiert –

+0

Normalerweise Wenn Sie zu diesem Link gehen "http: // localhost/aponit/dev/zones" es sollte mir die Seite zeigen, aber jetzt zeigt es mir nicht habe eine Fehlermeldung gefunden, die ich nicht möchte. Fehlermeldung wird angezeigt, wenn ich diese URL eingeben: "http: // localhost/aponit/dev/zones /' (Hinweis: Schrägstrich am Ende) –