2012-11-14 4 views
6

URL 구성 요소에 대한 일부 정보를 검토했지만 가능한 전체 길이 url에 대한 합리적인 설명과 각 구성 요소의 역할을 찾을 수 없습니다. 모든 URL을 활용하여 전체 URL이 어떻게 보이는지 알고 싶습니다. 나는 또한 내가 더 잘 undderstand 일단을 설명 할 수 있도록 약간의 GUI를 구축 할 수 있도록 노력하겠습니다 것입니다,하지만 난 구성 요소와 함께 노력할 것이다 그때까지 필자가 알고 :전체 가능한 URL 구문 및 문법

[ ] 브래킷 전체 구성 요소를 포함 | 파이프는의 가능한 하위 구성 요소를 보여줍니다 구성 요소 () 괄호 서브에 대한 메모, 생각, 그리고 가정을 포함/구성 요소

내 완전한 이해 :

[type][://][subdomain][domain][port][path][file][query][hash]

다음은 각 구성 요소에 대한 설명입니다. *이있는 경우 선택 사항입니다.

[type] * = [(type {http | https | ftp | 파일 | etc ...}}] (선택 사항이지만 현대적인 브라우저가 서버에 요청하기 위해 유형을 삽입하고 서버가 다른 유형을 반환 할 수도 있음을 의미합니다)

[://] = (이것이 무엇인지 불분명 함)

[subdomain] * = [[subdomain] | [하위 도메인] 하위 도메인

[domain] = [이름. (형식 {com | org | etc ..})]

[port] * = [(공백은 기본 포트 : 80) | 포트 : **]

[path] * = [(blank) | [경로] | [경로] 경로]

[file] = [이름. (타입 {html | php | php | (etc ...)})]

[query] * = [? 매개 변수 = 값 | 매개 변수 = 값 & 매개 변수 = 값 (등 ...)]]

[hash] * = [# [공백 (즉, 해시 없음) | anyStringToBeParsedClientSide (보통 지속성)] 내가 잊고, 또는 내가 그들을 설명하는 좋은 사이트를 내려다하고 또 어떤

(단지 해시 또한 fragment identifier로 알려져있다 배웠다). 이름이 정확하지 않으므로 이름을 수정하십시오. 이름이 무엇인지 알기 위해 노력하고 있습니다.

+0

왜 RFC를 읽지 않는가? 거기에 문서가 있습니다. 당신은 단지 약간의 시간을 검색해야합니다. –

+2

당신의 가정은 stackoverflow에 나쁜 맛을 남기는 것입니다. 나는 조사를했고, IETF가 올랐지 만 지나치게 기술적인데 URL과 관련이 있는지 확신 할 수 없었다. 학습 곡선의 일부는 어떤 자원이 관련되어 있는지를 아는 것입니다. 이것을 믿을 수 없다, [이 봐 (http://stackoverflow.com/questions/13384128/javascript-api-js-api) 나는 또한'RFC'에 대해 들어 본 적이 없어, 그래서 지금도 학습뿐만 아니라 . –

+0

URI의 전체 구문 및 문법은 정의 된 문서의 URI와 완전히 똑같습니다. –

답변

5

정말로 모든 복잡함을 원한다면, 표준 문서 만이 갈 수있는 유일한 방법이며,이를 발견하고 읽는 법을 배우는 것은 분명 도움이됩니다. 그리고 RFC는 일반적으로 읽기가 어렵지 않습니다.

이 경우 RFC 1738 (Uniform Resource Locators)이 원하는 리소스입니다. 지금까지 생각해 낸 것보다 "지나치게 기술적 인 것"이 아닙니다. 사실, 5 절은 당신이 쓴 것과 비슷한 공식 BNF 문법을 가지고 있습니다.

단순한 URL보다 일반적인 URI 형식을 설명하는 RFC 3986 (Uniform Resource Identifiers)에 관심이있을 수 있습니다.

언급 한 사항 중 일부는 RFC 2616 (Hypertext Transfer Protocol 1.1)에 설명 된 HTTP에만 해당됩니다. Section 3.2에 URI가 잠깐 동안 닿습니다.