2017-10-08 4 views

답변

1

난 당신이 /dir/stack-overflow/dir/search?q=stack-overflow에서 301 리디렉션을 의미 가정, 즉. 질문 : /dir/stack-overflow은 실제 폴더 또는 파일입니까? 나는 그렇게 생각하지 않으므로 /dir/stack-overflow/dir/search?q=stack-overflow으로 다시 작성해야합니다.

Options +FollowSymLinks 
RewriteEngine On 

RewriteCond %{ENV:REDIRECT_STATUS} ^$ 
RewriteCond %{QUERY_STRING} ^q=([^&]*) 
RewriteRule ^/?dir/search/?$ /dir/%1 [R=301,L] 

RewriteCond %{REQUEST_URI} !^/?dir/search/?$ [NC] 
RewriteRule ^/?dir/([^/?]+)/?$ /dir/search?q=$1 [L] 

나는 마지막 두 줄을 삭제하는 것보다는 다시 쓰지 않으려합니다.