मैं अपने विकास nginx / PHP सर्वर को एक मूल मास्टर / कैच-ऑल vhost कॉन्फिगरेशन के साथ सेटअप करने की कोशिश कर रहा हूं, ताकि जरूरत पड़ने पर असीमित ___.framework.loc
डोमेन बना सकूं ।
server {
listen 80;
index index.html index.htm index.php;
# Test 1
server_name ~^(.+)\.frameworks\.loc$;
set $file_path $1;
root /var/www/frameworks/$file_path/public;
include /etc/nginx/php.conf;
}
हालाँकि, nginx इस सेटअप के लिए 404 त्रुटि के साथ प्रतिक्रिया करता है। मुझे पता है कि nginx और PHP काम कर रहे हैं और अनुमति है क्योंकि localhost
मैं जिस कॉन्टेक्ट का उपयोग कर रहा हूं वह ठीक है।
server {
listen 80 default;
server_name localhost;
root /var/www/localhost;
index index.html index.htm index.php;
include /etc/nginx/php.conf;
}
समस्या को खोजने के लिए मुझे क्या जाँच करनी चाहिए? यहाँ उस php.conf की एक प्रति है जो वे दोनों लोड कर रहे हैं।
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
try_files $uri =404;
include fastcgi_params;
fastcgi_index index.php;
# Keep these parameters for compatibility with old PHP scripts using them.
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
# Some default config
fastcgi_connect_timeout 20;
fastcgi_send_timeout 180;
fastcgi_read_timeout 180;
fastcgi_buffer_size 128k;
fastcgi_buffers 4 256k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
fastcgi_intercept_errors on;
fastcgi_ignore_client_abort off;
fastcgi_pass 127.0.0.1:9000;
}