현재 모든 PHP 스크립트가 들어오는 모든 URL을 처리하도록합니다. 이 PHP 스크립트는 URL을 파싱하고 해당 URL에 대한 특정 처리기를로드합니다. 이처럼 :URL 처리 - PHP 대 Apache Rewrite
if(URI === "/")
{
require_once("root.php");
}
else if(URI === "/shop")
{
require_once("shop.php");
}
else if(URI === "/contact")
{
require_once("contact.php");
}
...
else
{
require_once("404.php");
}
지금, 나는이 실제로 매우 비효율적이고 내 사이트가 더 자주 방문한되면 불필요한 처리 능력이 많이 필요 위하여려고하고 있다는 것을 계속 생각. 내가 해당 URL을 많이 가지고 있기 때문에, 난 단지 정말 경우 변경을 만들고 싶어, 그러나
RewriteRule ^$ root.php [L]
RewriteRule ^shop$ shop.php [L]
...
: 그래서 mod_rewrite를 아파치 내에서 그것을 아파치가 직접 PHP 스크립트를로드하지 왜 생각 그만한 가치가있어.
그래서 내 질문은 다음과 같습니다. 어떤 옵션이 더 효율적입니까?
Btw, 필자는 절대적으로 URL 스키마를 유지하고 실제 파일 이름 (something.php)을 통해 스크립트에 액세스 할 수 없도록하고 싶습니다.
스타일 시트 및 이미지와 같은 정적 리소스를 어떻게 다루고 있습니까? PHP 스크립트를 통과하지 않는 한, 아마도 –
@Pekka 일 것입니다. 일부 리소스는 로그인 한 사용자 만 사용할 수 있기 때문에 쿠키와 로그인 상태를 먼저 확인한 다음 제공합니다. 그들과 함께 readfile(). 그러나 실제로 문제에 대한 첫 번째 답변을 제공해 주셔서 감사합니다. – unicornop
당신은'switch-case'를 사용해야 만합니다. –