1
더 나은 URL을 위해 .htaccess mod_rewrite
을 사용하고 있습니다. 여기 .htaccess mod_rewrite 및 후행 슬래시와 관련된 문제를 해결하는 방법
/artists.php?culture=arabic
/artists/arabic
로,
/artist/123456
에
/artist.php?id=123456
변 내 htaccess로 파일의 일부이며, .PHP 제거합니다
RewriteRule ^artist/([0-9]+) artist.php?id=$1
RewriteRule ^artists/(.+) artists.php?culture=$1
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^([^\.]+)$ $1.php [NC,L]
그것은 작동을하지만 난 뒤에 넣으면 끝에서 /
슬래시 /artist/arabic/
과 같이 404 오류가 발생합니다. 이 문제를 어떻게 해결할 수 있습니까? 후행 슬래시를 제거하는 것만으로도 효과가있을 수 있지만이 작업을 수행하는 방법을 모르겠습니다. 사용자가 우연히 /
또는 그 외의 것을 추가하고 페이지가 존재하지 않는다고 혼란스러워하도록하고 싶지 않습니다.
미리 감사드립니다.
감사와 함께 첫 번째 규칙에 선택적 후행 슬래시를 추가해야합니다, 그것은 작동합니다. 그리고 놀랍게도 그것은 다른 디렉토리의 .htaccess 파일에서 작동합니다 (선택적/실제로 규칙을 넣지 않고 추가했습니다 ... 첫 번째 규칙에 넣을 때 작동하는 방법은 무엇입니까?) – Nathan
아, 그 때문입니다. [L] 플래그가 꺼져서 다음 일치로 넘어갑니다. 당신은 보통 그것을 원하지 않을 것이고, 나는 실수로 그것을 제 대답에서 제외 시켰습니다. –