Modrewrite 가이 간단한 규칙에 자동 .php를 적용하는 이유는 무엇입니까?

StackOverflow https://stackoverflow.com/questions/600127

  •  03-07-2019
  •  | 
  •  

문제

Ok 얘들 아 나는 어리석은 문제가 있을지 모르지만 아마 멍청 할 것입니다 :)

이 간단한 .htaccess가 있습니다.

Options +FollowSymlinks
RewriteEngine on
RewriteBase /

RewriteRule ^news/([^/]+)$               news-inside.php?n=$1 [L]
RewriteRule ^news/?$                  news.php [L]


RewriteCond %{REQUEST_FILENAME} !-f

다음과 같은 일부 URL을 입력하여 첫 번째 규칙에 들어가려고 할 때마다.

http : // 호스트/뉴스/무언가

쿼리 문자열이있는 News-Inside.php가 아닌 파일 News.php로 리디렉션됩니다!

도달 한 페이지의 $ _get 및 $ _server를 살펴보면 결과입니다.

$_GET => empty

$_SERVER (some)

  'REQUEST_METHOD' => string 'GET' (length=3)
  'QUERY_STRING' => string '' (length=0)
  'REQUEST_URI' => string '/news/something' (length=15)
  'SCRIPT_NAME' => string '/news.php' (length=9)
  'PATH_INFO' => string '/something' (length=10)
  'PATH_TRANSLATED' => string '/var/www/rolo/something' (length=23)
  'PHP_SELF' => string '/news.php/something' (length=19)

어떤 아이디어 ??

도움이 되었습니까?

해결책

비활성화하십시오 MultiViews:

Options -MultiViews
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top