
쿼리를 기반으로 데이터베이스에서 콘텐츠를 동적으로 생성하는 PHP 스크립트가 있습니다. 사용자는 사용자 이름 "mark"를 텍스트 상자에서 검색할 수 있습니다. 콘텐츠는 www.domain.com/?username=mark에서 PHP에 의해 제공되지만 사용자가 제공 URL을 www.domain.com/username/mark.html로 볼 수 있기를 바랍니다. 마찬가지로 사용자는 프로필(정수)로 검색할 수 있습니다. 콘텐츠는 www.domain.com/?profile=2에서 생성됩니다. 사용자에게 제공 URL을 www.domain.com/profile/2.html로 표시하고 싶습니다. 이것이 가능합니까?
내 .htaccess 파일은 다음과 같습니다.
RewriteEngine On
RewriteRule ^username/([^/]*)\.html$ /?username=$1 [L]
RewriteRule ^realname/([^/]*)\.html$ /?realname=$1 [L]
RewriteRule ^profile/([^/]*)\.html$ /?profile=$1 [L]
Mod_rewrite가 활성화되었지만 이 파일이 작동하지 않는 것 같습니다.
답변1
코드는 작동해야 합니다. 어쩌면 전혀 실행되지 않을 수도 있습니다. 오타를 시도하여 Apache가 500 응답을 제공하는지 확인할 수 있습니다.
그 외에도 다음 htaccess를 사용해 볼 수 있습니다. 올바른 파일이 호출되는지 확인하기 위해 index.php를 추가했습니다.
RewriteEngine On
RewriteRule ^username/([^/]*)\.html$ /index.php?username=$1 [L]
RewriteRule ^realname/([^/]*)\.html$ /index.php?realname=$1 [L]
RewriteRule ^profile/([^/]*)\.html$ /index.php?profile=$1 [L]