작동하지 :RewriteRule의이 내 htaccess로 파일의 내용입니다
RewriteEngine on
RewriteRule ^upload$ upload.php
RewriteRule ^/(\d+)/?.*$ /view.php?id=$1 [L]
첫 번째 규칙이 성공적으로 작동합니다. http://localhost/upload
으로 이동하면 upload.php 페이지가 표시됩니다.
하지만 두 번째 규칙은 그렇지 않습니다. 내가 찾은 : http://localhost/1234/some-string
나는 404 오류가 발생합니다. 이 페이지는 http://localhost/view.php?id=1234
입니다.
규칙을 사용하여 무엇을하려는 지 알 수 있기를 바랍니다. URL 끝에있는 마지막 문자열을 완전히 무시하고 1234
을 view.php의 매개 변수로 사용하고 싶습니다.
왜이 기능이 작동하지 않는지 알 수 있습니까? 나는 내가 생각할 수있는 모든 것을 시도했지만 성공하지 못했습니다. 감사!
편집 : 죄송합니다. 잘못되었습니다. 네가 옳아. 대신이 작업을 수행하면 작동합니다 :'RewriteRule^(\ d +) /?.*$ /view.php?id=$1 [L]'. 당신이'-'의 의미가 무엇인지 확신 할 수 없습니다. – Josh
그것은 먼저 디렉토리를 찾는 것이기 때문에 그 일을 중단하는 방법을 모릅니다. 첫 번째 작업은 url이'/'로 끝나지 않기 때문에 작동합니다 (규칙이 그 결과를 지정하지 않기 때문에이 경우에도 작동하지 않습니다). – fbstj