wake-up-neo.com

내 URL에 마침표를 사용해야합니까?

URL에 후행 슬래시를 사용해야하는 경우는 언제입니까? 예를 들어 - 내 URL은 /about-us/처럼 보이거나 /about-us처럼 보입니까?

나는 완전히 SEO 관련 이슈들에 대해 잘 알고있다 - 중복되는 내용과 표준적인 것; 나는 페이지 를 정확하게 제공하는 컨텍스트에서 사용해야하는 것을 알아 내려고하고있다.

예를 들어, 제 동료는 끝에있는 슬래시가 "폴더"- "디렉토리"라는 것을 의미하므로 올바른 스타일이 아닙니다. 하지만 결국에는 슬래시가 없다고 생각합니다. 폴더와 거의 유사하기 때문에 올바르지는 않지만 정상적인 파일이 아니라 확장명이없는 파일 이름이기도합니다.

사용법을 알기위한 적절한 방법이 있습니까?

252
Denis

개인적인 의견으로는 슬래시가 오용됩니다.

기본적으로 URL 형식은 나중에 UNIX 시스템에서 파일 및 폴더와 동일한 UNIX 형식으로 만들어졌으며 마지막으로 웹에 맞게 조정되었습니다.

유닉스 계열 운영 체제에서이 책의 ​​일반적인 URL은 로컬 하드 디스크의 파일에 저장된 전자 서적을 식별하는 file : ///home/username/RomeoAndJuliet.pdf와 같은 파일 경로입니다.

출처 : Wikipedia : 통일 자원 식별자

또 다른 좋은 읽을 거리 : Wikipedia : URI Scheme

1994 년에 URL을 정의한 RFC 1738에 따르면 리소스에 다른 리소스에 대한 참조가 포함되어있을 때 상대 링크를 사용하여 두 번째 리소스의 위치를 ​​정의 할 수 있습니다. 즉 "다음 상대방을 제외하면이 위치와 동일한 위치에 있습니다 통로". 이러한 상대 URL은 상대 링크가 기반으로하는 계층 적 구조를 포함하는 원래 URL에 종속되며, ftp, http 및 파일 URL 스키마는 계층 구조로 간주 될 수있는 일부의 예 계층 구조의 구성 요소는 "/".로 구분됩니다.

출처 : Wikipedia URL (Uniform Resource Locator)

또한:

그것이 우리가 자주 듣는 질문입니다. 답변 전방! 일반적으로 후행 슬래시가있는 URL은 디렉토리를 나타내고 후행 슬래시는 파일을 나타냅니다.

http://example.com/foo/ (대시 슬래시, 일반적으로 디렉토리 포함)

http://example.com/foo (대시 슬래시가 없으며 일반적으로 파일)

출처 : Google WebMaster Central Blog - 슬래시 또는 슬래시하지 않으려면

마지막으로 :

  1. URL 끝에 슬래시를 넣으면 주소가 "꽤"보입니다.

  2. 끝에 슬래시가없고 확장자가없는 URL은 다소 이상하게 보입니다.

  3. CSS 파일의 이름은 결코 지정하지 않습니다 (예 :) http://www.sample.com/stylesheet/

하지만 환경에 관계없이 웹 우수 사례를지지하고 있습니다. 내선이없는 URL에 관해서 말씀 드렸듯이, 어색하고 불분명 할 수 있습니다.

125
Dementic

그것은 선호의 문제가 아닙니다. /base/base/에는 다른 의미가 있습니다. 많은 경우, 그 차이는 중요하지 않습니다. 그러나 상대 URL이있을 때 중요합니다.

  • /base/와 관련된 child/base/child입니다.
  • /base와 관련된 child은 (아마도 놀랍게도) /child입니다.
147
Raedwald

나는 항상 비 - 디렉토리 URL (다른 것들 중에서 WordPress)에 후행 슬래시가 많이 사용된다는 것에 놀랐다. 이것은 자원이 의미 상으로 잘못 된 후에 슬래시를 넣는 것이기 때문에 논쟁이나 논쟁이되어서는 안됩니다. 웹은 주소 지정 가능한 자원을 제공하도록 설계되었으며 주소 (URL)는 * nix 스타일의 파일 시스템 계층 구조를 에뮬레이트하도록 설계되었습니다. 그 맥락에서 :

  • 슬래시는 항상 디렉토리를 나타내며 파일은 표시하지 않습니다.
  • 파일의 이름은 확장명의 유무에 관계없이 지정할 수 있지만 슬래시를 포함하거나 끝낼 수는 없습니다.

이 지침을 사용하면 디렉토리가 아닌 자원 뒤에 슬래시를 넣는 것은 잘못입니다.

57
Yarin

그것은 실제로 미학의 문제가 아니라 기술적 인 차이입니다. 디렉토리의 생각은 완전히 정확하고 거의 모든 것을 설명합니다. 해결해 봅시다 :

당신은 지금 석기 시대에 돌아 왔거나 정적 페이지 만 제공합니다

웹 서버에는 디렉토리 구조가 고정되어 있으며 이미지, html 등과 같은 정적 파일 만 있습니다. 서버 측 스크립트 나 그 밖의 어떤 것도 없습니다.

브라우저가 /index.htm을 (를) 요청하고 존재하며 클라이언트에게 전달됩니다. 나중에 /dvd/ 디렉토리에 DVD 영화 검토와 각 html 페이지가 있습니다. 이제 누군가가 /dvd/adams_apples.htm을 (를) 요청했으며 거기에 있으므로 전달되었습니다.

언젠가 누군가가 /dvd/-디렉토리를 요청하고 서버가 무엇을 전달할지 파악하려고합니다. 액세스 제한 외에도 두 가지 가능성이 있습니다. 사용자에게 디렉토리 내용 표시 (이미 어딘가에 보았을 것입니다) 또는 기본 파일 표시 (Apache에서는 DirectoryIndex: sets the file that Apache will serve if a directory is requested.)

지금까지는 이것이 예상되는 경우입니다. 이미 처리의 차이를 보여 주 었으니 한번 들어 봅시다 :

오전 5시 34 분에 파일을 업로드하는 중에 실수가 발생했습니다.

(이것은 완전히 이해할 수 있습니다.) 따라서, 당신은 /dvd/the_big_lebowski.htm를 업로드하는 대신 /에 파일을 dvd (확장자 없음)로 업로드했습니다.

누군가가 /dvd/ 디렉토리 목록을 북마크에 추가했습니다 (물론 index.htm을 (를) 작성하고 항상 업데이트하고 싶지는 않습니다). 디렉토리 내용이 모두 전달됩니다.

누군가 귀하의 목록을 듣고 /dvd를 입력하고 있습니다. 그리고 지금은 망했다. 서버는 DVD 디렉토리 목록 대신 해당 이름의 파일을 찾고 Big Lebowski 파일을 전달합니다.

따라서 해당 파일을 삭제하고 페이지를 다시로드하도록 지시합니다. 서버가 /dvd 파일을 찾지 만 사라졌습니다. 대부분의 서버는 그 이름을 가진 디렉토리가 있다는 것을 알아 차리고 클라이언트에게 찾고있는 것이 실제로 다른 곳임을 알려줍니다. 응답은 다음과 같습니다.

Status Code:301 Moved PermanentlyLocation: http://[...]/dvd/

따라서 디렉토리 나 파일에 대해 yo 생각하는 것을 완전히 무시하면, 서버는 그러한 것들만 처리 할 수 ​​있으며 다르게 언급하지 않는 한 "슬래시 여부"의 의미에 대해 결정합니다.

마지막으로이 응답을받은 후 클라이언트는 /dvd/을로드하고 모든 것이 정상입니다.

괜찮아? 아니.

"괜찮아"는 당신에게 충분하지 않습니다

모든 것이 /index.php에 전달되어 처리되는 동적 페이지가 있습니다. 지금까지는 모든 것이 잘 작동했지만 그 전체가 느리게 느껴지기 시작했습니다.

/dvd/list이 똑같이하고 있음을 알 수 있습니다. /dvd/list/로 리디렉션 한 다음 내부적으로 index.php?controller=dvd&action=list로 변환됩니다. 하나의 추가 요청-그러나 더 나쁜! customer/login은 (는) customer/login/ (으)로 리디렉션되고 이는 customer/login/의 HTTPS URL로 리디렉션됩니다. 결국 사용자 경험을 느리게하는 불필요한 HTTP 리디렉션 (-추가 요청)이 tons가됩니다.

여기에도 기본 디렉토리 색인이있을 가능성이 큽니다. action이없는 index.php?controller=dvd은 (는) 내부적으로 index.php?controller=dvd&action=list을로드합니다.

개요:

  • /로 끝나는 경우 never 파일이 될 수 있습니다. 서버 추측이 없습니다.

  • 슬래시 또는 슬래시 없음은 완전히 다른 의미입니다. "슬래시 또는 슬래시 없음"사이에는 기술/자원 차이가 있으므로이를 알고 이에 따라 사용해야합니다. /dvd/index.htm :라고 말할 때 서버가 /dvd을로드하거나 올바른 스크립트를로드하기 때문일뿐입니다. 올바른 요청을했기 때문이 아닙니다. /dvd/ 일 것입니다.

  • 실제로 슬래시를 생략하면 mean 슬래시 버전은 추가 HTTP 요청 패널티를 제공합니다. 항상 나쁘고 (모바일 대기 시간을 생각 함) " pretty URL "-특히 크롤러가 SEO가 생각하거나 믿고 싶어하는만큼 바보가 아니기 때문에;)

24
nico gawenda

URL을 /about-us/ (후행 슬래시 포함)로 만들면 하나의 파일 index.html로 시작한 다음 나중에 파일을 확장하고 (예 : our-CEO-john-doe.jpg) 파일을 추가하거나 /about-us/company/, /about-us/products/ 등과 같은 계층 구조를 만들 수도 있습니다. ), 게시 된 URL을 변경하지 않고. 이것은 당신에게 큰 유연성을 제공합니다.

18
musiphil

여기에 대한 다른 해답은 후행 슬래시를 생략하는 것을 선호하는 것 같습니다. 후행 슬래시가 검색 엔진 최적화 (SEO)에 도움이되는 경우가 하나 있습니다. 문서에 .html가 아닌 파일 확장명이있는 것으로 보이는 경우입니다. 이것은 웹 사이트를 평가하는 사이트의 문제가됩니다. 그들은이 두 가지 URL 중에서 선택할 수 있습니다.

  • http://mysite.example.com/rated.example.com
  • http://mysite.example.com/rated.example.com/

이 경우, 나는 후미 슬래시 포함을 선택합니다. 이는 .com 확장이 Windows 실행 가능 명령 파일의 확장이기 때문입니다. 검색 엔진 및 바이러스 검사 프로그램은 이러한 메커니즘을 통해 배포 된 악성 코드가 포함 된 것으로 보이는 URL을 종종 싫어합니다. 후행 슬래시는 페이지가 검색 엔진에서 순위를 매기고 바이러스 검사기로 얻을 수 있도록 모든 우려를 완화하는 것으로 보입니다.

URL에 파일 부분에 .이 없으면 간단하게 후행 슬래시를 생략하는 것이 좋습니다.

10

파일 이름에 확장이 필요하다고 누가 알습니까? 언젠가는 * nix 기계를 한번 보아라.
나는 네 친구와 동의한다. 후행은 없다.

9
Aaron Gage

검색 엔진 최적화 (SEO) 관점에서 URL 끝에 슬래시를 포함할지 여부는 관련성이 없습니다. 요즘은 웹에서 두 가지 예를 보는 것이 일반적입니다. 사이트는 어떤 방식으로도 처벌되지 않으며이 선택이 웹 사이트의 검색 엔진 순위 또는 기타 SEO 고려 사항에 영향을 미치지 않습니다.

선호하는 URL 명명 규칙을 선택하고 각 웹 페이지의 <head> 섹션에 정식 메타 태그를 포함하십시오.

검색 엔진은 하나의 웹 페이지를 두 개의 분리 된 URL로 간주 할 수 있습니다. 예를 들어, example.com/about-us/example.com/about-us와 같이 슬래시가 있거나없는 URL을 발견 할 수 있습니다.

다른 사이트의 URL 연결 방법을 제어 할 수 없기 때문에 각 페이지에 정식 메타 태그를 포함하는 것이 가장 좋습니다.

표준 태그는 다음과 같습니다. <link rel="canonical" href="https://example.com/about-us" />. 표준 메타 태그를 사용하면 검색 엔진이 다른 웹 사이트에 귀하의 사이트로 연결될 때 슬래시가 포함되는지 여부에 관계없이 각 URL을 한 번만 계산합니다.

2
riot