server { server_name test1; root /var/www; location / { return 301 https://$server_name$request_uri; } } server { listen 443 ssl; server_name test1; ssl_certificate /etc/nginx/ssl/XXXXX.crt; ssl_certificate_key /etc/nginx/ssl/XXXXX.key; auth_basic "Restricted"; auth_basic_user_file /home/password/XXXXX; root /var/www; index index.php index.html index.htm; client_max_body_size 1000M; # set maximum upload size fastcgi_buffers 64 4K; location / { try_files $uri $uri/ index.php; } location ~* \.php$ { include fastcgi_params; fastcgi_pass php; fastcgi_index index.php; } location ~ ^(?.+?\.php)(?/.*)?$ { try_files $script_name = 404; include fastcgi_params; fastcgi_param PATH_INFO $path_info; fastcgi_param HTTPS on; fastcgi_pass php; } }