经过大量的search,我已经设法得到漂亮的URL使用:
server { listen 80; server_name www.url.com; rewrite ^/(.*) http://url.com/$1 permanent; } server { listen 80; server_name url.com; access_log /var/www/url.com/logs/access.log; error_log /var/www/url.com/logs/error.log; location / { root /var/www/url.com/public/; index index.html index.htm index.php; include /etc/nginx/mime.types; try_files $uri $uri/ @extensionless-php; } location @extensionless-php { rewrite ^(.*)$ $1.php last; } location ~ \.php$ { include /etc/nginx/fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www/url.com/public$fastcgi_script_name; } location /blog { root /var/www/url.com/public; index index.php; try_files $uri $uri/ /blog/index.php?$args; } }
这似乎工作。 但是,对于search引擎优化的目的,我想永久redirect请求从url.com/filename.php到新的url.com/filename
我收集到我应该使用rewrite ^/(.*)\.php$ http://url.com/$1 permanent; 在.php位置块,但我怎么做,而不会导致无限循环?