나는 동적 문자열 인 물론 사용자 (Facebook과 같은)를 위해 "개인 URL"을 만들 수 있기를 바랍니다. 그것은 사이트의 뿌리에 있어야하고, 그 이유는 그것으로 큰 두통을 겪고 있습니다. 내가 가진Nginx가 "개인 URL"을 만들기 위해 다시 작성
요구 사항은 다음과 같습니다
1 내가 www.example.com/John.Doe 필요 (. 그것은-ZA-Z0-9_- 될 수 있습니다)
및 로 재 작성 :
www.example.com/profile?id=John.Doe
2는 또한 t에 내가 할 수 있었다 이하와 같은 확장 (로 사이트 스크립트를 필요 여기에 그가 큰 사람, 사용하는 "$ uri.php $ is_args $ QUERY_STRING;") : www.example.com/login.php
을 :그렇게 www.example.com/login~~HEAD=V이로 이동합니다
많은 일을 시도했지만 제대로 작동 할 수있는 공식을 얻을 수 없습니다. 당신은 당신의 확장이없는 스크립트와 개인의 URL에 대한 중복 네임 스페이스를
location/{
try_files $uri $uri/ $uri.php$is_args$query_string;
}
location ~ \.php$ {
if ($request_uri ~ ^/([^?]*)\.php(\?.*)?$) {
return 301 /$1$2;
}
try_files $uri =404;
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9001;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
대단히 감사합니다!, 잘됐다. 나는 여기서 새로운 사람으로 투표를 할 수 없다. – Trocker
SO에 오신 것을 환영합니다 .--) 나는 또한 내 대답에 대한 몇 가지 참조를 추가했습니다. –