문제

다시 말해, 내가 사용하든 상관 없습니다 http://www.example.com/ 또는 http://www.example.com/ ?

나는 최근 호스트 이름으로 이상한 문제를 겪고 있습니다. 모든 종류의 브라우저에서 액세스하는 APACHE2.2+PHP5.1.4 웹 서버가 있습니다. IE6 사용자 (특히 UA 문자열이 수많은 BHO로 부담 을가하면 아직 패턴이 없음)는 사이트에 액세스하는 데 문제가있는 것 같습니다 (쿠키가 사라지고 JS가로드를 거부합니다). http://www.example.com/, 하지만 http://www.example.com/

나는 그것을 확인했다 http 그리고 DNS RFCS, 내 P3P 정책, 쿠키 설정 및 예규; 그러나 도메인 이름이 사례에 민감하다는 언급조차 보지 못했습니다.

(나는 경로와 쿼리 문자열이 대소 민감하다는 것을 알고 있습니다 ( ?x=foo 다릅니다 ?x=Foo ) 그리고 그것들을 적절하게 대우하십시오. 내 코드에서 도메인 이름으로 구문 분석/처리를 수행하지 않습니다)

내가 뭔가 잘못하고 있습니까?

도움이 되었습니까?

해결책

도메인 이름입니다 ~ 아니다 사례에 민감한; Example.com 동일한 IP로 해결됩니다 eXaMpLe.CoM. 웹 서버 또는 브라우저가 처리하는 경우 Host 케이스에 민감한 헤더, 그것은 버그입니다.

다른 팁

아니요, 이것은 아무런 차이가 없습니다.

URL RFC 사양을 확인하십시오 (http://www.ietf.org/rfc/rfc1738.txt). 섹션 2.1에서 :

탄력성의 경우 URL을 해석하는 프로그램은 대문자 문자를 체계 이름의 소문자와 동등한 것으로 취급해야합니다.

당신이 당신의 질문을 실질적인 질문으로 말한 다음 실제 문제를 설명했기 때문에, 대답은 실제로 다음과 같습니다. 예.

다른 답변은 RFC 사양이 호스트 이름에 대해 말하는 것에 대해 정확합니다. 기술적으로는 사례에 민감하지 않아야합니다. (실제로, 오래된 협약은 최상위 도메인 (TLD)이 "Apple.com"과 같은 모든 캡에 있어야한다는 것이 었습니다.)

그러나 실제 세계에서는 OS Resolvers 및 주요 브라우저와 같은 성숙한 소프트웨어가이를 제대로 얻습니다. 모든 종류의 보조 코드는 이것을 잘못 처리하고 당신을 엉망으로 만들 수 있습니다.

에 따르면 http://tools.ietf.org/html/rfc1035:

공식 프로토콜의 일부인 DNS의 모든 부분에 대해, 문자열 (예 : 레이블, 도메인 이름 등) 간의 모든 비교는 대소의 민감성 방식으로 수행됩니다. 현재이 규칙은 도메인 시스템 전체에서 예외없이 시행됩니다.

그런 다음 이것은 미래에 변화가있을 것이라고 말합니다. COM 도메인이 사례에 민감하지 않다고 가정하는 것이 안전하지만 ASCII가 아닌 문자를 사용하는 다른 도메인은 다를 수 있습니다.

아니요, 프로토콜 지정자와 관련하여 사례 민감도가 없습니다.

URL의 RFC에서 이것을 볼 수 있습니다.

2.1. URL의 주요 부분

체계 이름은 일련의 문자로 구성됩니다. 소문자 "a"-"z", 숫자 및 캐릭터 플러스 ( "+"), 기간 ( ".") 및 하이픈 ( "-")이 허용됩니다. 탄력성의 경우 URL을 해석하는 프로그램은 대문자 문자를 체계 이름의 소문자와 동등한 것으로 취급해야합니다 (예 : "HTTP"및 "HTTP").

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