이 아파치 나 PHP 일 경우 나도 몰라하지만 당신은 하나의 가면 : 디렉토리가 존재하지 않기 때문에존재하지 않는 URL에서 파일을 확인할 수 없게하려면 어떻게합니까?
mysite.com/about
mysite.com/about/
는, 대신에 404 오류의 mysite.com/about.php
파일을 보여줍니다.
나는 이것이 어떤 설정인지, 아마 htaccess 것, 어떤 아이디어일까요?
이 아파치 나 PHP 일 경우 나도 몰라하지만 당신은 하나의 가면 : 디렉토리가 존재하지 않기 때문에존재하지 않는 URL에서 파일을 확인할 수 없게하려면 어떻게합니까?
mysite.com/about
mysite.com/about/
는, 대신에 404 오류의 mysite.com/about.php
파일을 보여줍니다.
나는 이것이 어떤 설정인지, 아마 htaccess 것, 어떤 아이디어일까요?
다른 사람들이 대답했듯이 mod_rewrite 규칙 일 수 있습니다. 사용자가 설명하는 기능을 명시 적으로 사용하기위한 지침 인 MultiViews
도 있습니다.
http://httpd.apache.org/docs/2.2/content-negotiation.html#multiviews
가 MultiViews를 사용하면 다음과 같은 효과가있다 : 서버 /일부/DIR은 MultiViews을 활성화 한 경우,/일부/DIR/foo에 대한 요청을 수신 한 경우 /일부/dir/foo가 존재하지 않으면 서버는 파일 이름이 foo. * 인 디렉토리를 읽고 실제로 은 의 모든 파일 이름을 지정하고 동일한 미디어 유형 및 콘텐츠 인코딩을 지정하는 유형 맵을 만듭니다 은 클라이언트가 중 하나를 이름으로 요청한 경우에 나타납니다. 그런 다음 클라이언트의 요구 사항에 가장 일치하는 을 선택합니다. 당신을 httpd.conf 또는 가상 호스트 고유의 설정 파일에
Options MultiViews
에 대한
는
봐. 이와
그건 기본 동작이 아니므로 말하기 어렵습니다. 아파치 측에서 그러한 일이 발생했다면, 일치하는 재 작성 지침 시퀀스를 찾아보십시오. 그들은 RewriteCond
으로 시작하여 RewriteRule
으로 끝나는 것으로 보입니다.
VirtualHost
설정 또는 사이트 .htaccess
에 아무것도 표시되지 않으면 사용중인 모든 PHP 프레임 워크에서 관리되고 있으므로 대신 구성해야합니다.
일해야한다. 나는'mod_rewrite' 지시자 또는 불완전한 요청을위한 대체 파일 이름을 제안 할 수있는 하나의 모듈을 의심하고있다. 나는 그 이름을 잊어 버렸다 ... –
는 PHP 측에서 $ _SERVER [REQUEST_URI], 전체 URL과 함께, 당신은 구문 분석 할 수 .htaccess로하고 원하는 작업을 수행,이, 당신은 오류가 제어하고 404 리디렉션 고려해야 할 일반적인 방법입니다
ErrorDocument 404 /404.php
<IfModule mod_rewrite.c>
RewriteEngine On
# RewriteBase
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]
</IfModule>
와 PHP 측 INT, 그것은 확실히 기본 PHP/아파치 설치되지 않습니다 index.php를
$URLarray = explode('/', $_SERVER['REQUEST_URI']);
질문과 관련이 없습니다 ... – meagar
고맙습니다. – fire
도와 줘서 기쁩니다. MultiViews는 일부 (.htaccess 파일 및 mod_rewrite 규칙으로 많은 재생 방지) 및 다른 사람의 단점에 적합합니다. – meagar