>

다음 경로의 반응 앱이 있습니다 :

example.com/ example.com/policy

example.com/ 에 액세스하려고하면  내 iOS 앱의 WKWebView에서 올바른 홈페이지를 렌더링하고 있습니다. 하지만 example.com/policy 에 액세스하려고하면  nginx는 WKWebView에서 404 오류를 반환합니다. 모든 페이지가 모든 모바일/데스크톱 브라우저에서 정상적으로 작동하는 것 같습니다.

example.com/policy 에 액세스 할 때

access.log  일반 브라우저에서 :

[18/Aug/2018:17:10:06 +0000] "GET /js/main.js HTTP/1.1" 304 0 "https://www.example.com/policy" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like $

[18/Aug/2018:17:10:06 +0000] "GET /js/jquery-1.11.3.min.js HTTP/1.1" 304 0 "https://www.example.com/policy" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 $

[18/Aug/2018:17:10:06 +0000] "GET /js/plugins.js HTTP/1.1" 304 0 "https://www.example.com/policy" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, li$

[18/Aug/2018:17:10:07 +0000] "GET /service-worker.js HTTP/1.1" 200 3164 "https://www.example.com/service-worker.js" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit$

아래 iOS 앱의 WKWebView에서 동일한 경로에 액세스하는 것은 access.log입니다. [18/Aug/2018:17:13:45 +0000] "GET /policy HTTP/1.1" 404 152 "-" "Mozilla/5.0 (iPad; CPU OS 11_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko)"

이 문제가 콘텐츠와 관련이 없다고 확신하지만 콘텐츠 라우터가 콘텐츠를 렌더링하지 못하게하는 React Router의 문제인지 알고 싶습니다.

업데이트 : 문제는 Nginx가 URL 경로를 내 React 앱으로 번역하는 것이 었습니다. React-router-dom을 사용하여 React 앱의 경로를 관리하고 있습니다. nginx conf 파일에 다음 줄을 추가했는데 정상적으로 작동했습니다.

location /policy {
rewrite ^/policy(.*) /$1 break;
proxy_pass http://example.com/policy;
}

  • 답변 # 1

    앱에서 라우팅을 어떻게 관리하고 있습니까? 역사 소품이나 href? href를 사용하는 경우 iOS에서 loadUrl 메소드를 대체해야합니다. codesandbox 또는 코드 스 니펫을 공유하면 좋을 것입니다.

  • 이전 javascript - 루프에서 다른 변수 값을 이벤트 핸들러로 전달
  • 다음 c++ - centos 7에서 Qt 5111의 컴파일 오류