2016-07-27 3 views
1

음, .htaccess 규칙을 사용하여 웹 사이트 URL 구조를 편집하고 있습니다. zones.php 페이지에 양식 데이터를 편집 할.htaccess를 사용하여 오류 메시지를 표시하는 방법 URL이 잘못된 경우?

http://localhost/aponit/dev/zones 

이 URL은 : 지금, 나는 URL을 다음했다. 편집 링크를 클릭 한 후에는이 링크로 이동합니다 :

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

이 링크는 update.php 페이지에 열려 있습니다. 그때는 적절한 오류 페이지가 나에게 오류 메시지를 보여주는 것 URL을

/55 or date/55 

에서 일부 다음 제거하면 이제

. 좋아.

하지만 URL에서 update/55를 제거하면 다음 URL은 같이한다 :

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

다음은 zones.php 페이지와 스타일 시트

깨 부르고하지만 나는 오류 페이지의 예를 보여주고 싶은 : not-found.php 페이지. .htaccess를 사용하여 어떻게 할 수 있습니까?

내 htaccess로 규칙 :

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] 

답변

1

당신은 사용할 수 있습니다

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

된 기회. 영역 페이지에서 오류 메시지 –

+0

이 있지만 zone.php 페이지가 존재 함을 나타냅니다. –

+0

일반적으로이 링크 인 'http : // localhost/aponit/dev/zones'로 이동하면 페이지가 표시되지만 지금은 그렇지 않습니다. 원하지 않는 오류 메시지를 발견했습니다. 'http : // localhost/aponit/dev/zones /'(끝에 슬래시 : 끝에 슬래시) –

관련 문제