%EC%9D%84%20%EA%B8%B0%EB%B0%98%EC%9C%BC%EB%A1%9C%20URL%EC%9D%84%20%EB%8B%A4%EC%8B%9C%20%EC%9E%91%EC%84%B1%ED%95%A0%20%EC%88%98%20%EC%9E%88%EC%8A%B5%EB%8B%88%EA%B9%8C%3F.png)
Apache/2.4.54 사용(Win64)
이와 같이 이전 도메인에서 새 도메인으로 다시 작성해 달라는 요청을 받았습니다
- 에서
https://oldtest.mydomain.com/company/customerpage/#/customer/<getThisNumber>/something
- 에게
https://newtest.mydomain.com/company/something/customer/<getThisNumber>
정규식을 사용하여 번호를 가져와 새 번호로 전달한 다음 [L,R=301]을 사용하여 리디렉션하면 괜찮을 수도 있습니다.
그러나 심판.StackOverFlow의 이 게시물
해시태그는 조각 식별자이고 해시태그 뒤의 문자열은 mod_rewrite로 처리할 수 있는 것이 아니라는 것을 알고 있지만 해시태그 자체가 표시될 것으로 예상했습니다. 그래서 저는 이와 같은 규칙을 일치시키려고 노력했습니다.
그래서 제가 시도한 것은 (스니펫)
<LocationMatch "^\/company\/customerPage\/">
LogLevel alert rewrite:trace3
RewriteCond %{QUERY_STRING} ([0-9]*)\/something$
RewriteRule ^(.*)$ "https://newtest.mydomain.com/company/something/customer/$1" [L,R=301]
이것은 작동하지 않습니다. 질문은 내 코드에 사소한 문제가 있거나 이것이 가능하지 않을 위험이 있다는 것을 알고 있는지입니다. 그러나 희망적으로는 그렇지 않습니다.
답변1
https://www.w3.org/Addressing/URL/4_URI_Recommentations.html
해시( #,,
#
ASCII 23 16진수) 문자는 객체의 URI를 조각 식별자와 구분하기 위한 구분 기호로 예약되어 있습니다.
거기에 내포된 의미는 다음과 같습니다.
해시
#
태그는 URI의 일부가 아닙니다.그리고 URI만 웹 서버로 전송됩니다.
해시 및 조각 식별자는 요청 시 웹 서버로 전송되지 않습니다.
Apache 및/또는 mod_rewrite가 처리할 서버 측이 없습니다.
클라이언트 측을 실행하는 것으로 이 문제를 해결해야 합니다. 예를 들어 자바스크립트는 브라우저 창에서 실행됩니다.