1
지금이 순간에 나는 $_GET
변수를 유지하면서 index.php로 모든 것이 바뀌도록 예쁜 URL을 다시 작성하는 상황이 있습니다. htaccess는 다음과 같이 표시됩니다.예쁜 URL을 GET 변수로 생성하십시오.
RewriteEngine On
RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)/([^/\.]+)?$ index.php?p=$1&projectid=$2&sub=$3&type=$4
RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)?$ index.php?p=$1&projectid=$2&sub=$3
RewriteRule ^([^/\.]+)/([^/\.]+)?$ index.php?p=$1&projectid=$2
RewriteRule ^([^/\.]+)/?$ index.php?p=$1
잘 작동합니다. 그러나 나는 다른 방향으로도 일하기를 원한다. 누군가 http://www.example.com/index.php?p=page&projectid=123으로 이동하면 http://www.example.com/page/123으로 리디렉션됩니다.
가능한가요? 그렇다면 어떻게해야합니까? 지금까지 제가 관리해온 것은 리다이렉트 루프를 만드는 것입니다.
RewriteCond %{QUERY_STRING} ^p=([^&]+)
RewriteRule ^/?index\.php$ http://www.example.com/%1? [L,R=301]
[참고 : mod \ _rewrite, URL 재 작성 및 "예쁜 링크"설명] (http://stackoverflow.com/questions/20563772/reference-mod-rewrite-url-rewriting-and-pretty-links - 설명) –
기존 라우터 솔루션 (ZF, SF 등)을 조사하십시오. – fejese
@fejese : 내가 읽을 수있는 링크를 알려주시겠습니까? 전에는 들어 본 적이 없어요. –