여러 링크가 포함 된 로컬 마크 다운 파일이 있고 해당 링크가 pdf와 같은 로컬 파일로 연결되기를 원합니다.
다음 구문을 사용합니다.
[my link](file:///C:/my_file.pdf)
하지만 마크 다운 파일을 Firefox 페이지로 열고 링크를 클릭하면 아무 일도 일어나지 않습니다.
내가 정확히 무엇을 놓쳤습니까? 로컬 파일을 열 수 있습니까?
답변
렌더링 된 마크 다운을 어떻게 여나요?
당신이 HTTP 그것을 통해 호스팅하는 경우, 당신은을 통해 액세스 즉 http://
나 https://
, 대부분의 최신 브라우저가 열려 지역 링크, 예를 들면와를 거부합니다 file://
. 이것은 보안 기능입니다 .
보안상의 이유로 Mozilla 응용 프로그램은 원격 파일에서 로컬 파일 (및 디렉토리) 로의 링크를 차단합니다. 여기에는 하드 드라이브, 매핑 된 네트워크 드라이브의 파일에 대한 링크가 포함되며 UNC ( Uniform Naming Convention ) 경로 를 통해 액세스 할 수 있습니다 . 이것은 다음과 같은 여러 가지 불쾌한 가능성을 방지 합니다.
- 사이트가 기본 설치 경로를 확인하여 운영 체제를 감지하도록 허용
- 사이트가 시스템 취약성을 악용하도록 허용 (예 :
C:\con\con
Windows 95/98)- 사이트가 브라우저 기본 설정을 감지하거나 민감한 데이터를 읽을 수 있도록 허용
해당 페이지에 몇 가지 해결 방법이 나열되어 있지만 가능한 경우이 작업을 피하는 것이 좋습니다.
답변
대답 중 어느 것도 나를 위해 일하지 않았습니다. 그러나 BarryPye의 답변에서 영감을 받아 상대 경로를 사용할 때 작동한다는 것을 알았습니다!
# Contents from the '/media/user/README_1.md' markdown file:
Read more [here](./README_2.md) # It works!
Read more [here](file:///media/user/README_2.md) # Doesn't work
Read more [here](/media/user/README_2.md) # Doesn't work
답변
로컬 이미지에 링크하는 것과 동일한 방식으로 로컬 파일에 링크합니다. 다음은 start_caQtDM_7id.sh
마크 다운 소스와 동일한 디렉토리에있는 파일 에 링크하는 예입니다 .

답변
@ BringBackCommodore64 답변을 엉망으로 만든 후 나는 그것을 알아 냈습니다.
[link](file:///d:/absolute.md) # absolute filesystem path
[link](./relative1.md) # relative to opened file
[link](/relativeToProject.md) # relative to opened project
그들 모두에서 테스트를 거쳐 Visual Studio Code
작동했습니다.
참고 : 절대 경로는 편집기에서 작동하지만 마크 다운 미리보기 모드에서는 작동하지 않습니다!
답변
파일 이름에 공백이 있으면 다음을 시도하십시오.
[file](./file%20with%20spaces.md)
[file](<./file with spaces.md>)
첫 번째는 더 신뢰할 수있는 것 같습니다
답변
drifty0pine 감사합니다!
첫 번째 해결책은 작동합니다!
[a relative link](../../some/dir/filename.md)
[Link to file in another dir on same drive](/another/dir/filename.md)
[Link to file in another dir on a different drive](/D:/dir/filename.md)
하지만 ../
다음과 같이 내 파일이있는 폴더까지 더 넣어야 했습니다.
[FileToOpen](../../../../folderW/folderX/folderY/folderZ/FileToOpen.txt)
답변
파일이 .md가있는 디렉토리와 같은 디렉토리에 있으면 그냥 넣어도 [Click here](MY-FILE.md)
됩니다.
그렇지 않으면 프로젝트의 루트 디렉터리에서 경로를 만들 수 있습니다. 따라서 전체 프로젝트 / git-repo 루트 디렉토리가 ‘my-app’이고 my-app / client / read-me.md를 가리키고 싶다면 다음을 시도하십시오.[My hyperlink](/client/read-me.md)
.
적어도 Chrome에서 작동합니다.
