Saya memulai proyek yang menggunakan variabel lingkungan untuk mengatur koneksi database dan beberapa hal lainnya. (Mereka tidak ingin menggunakan file konfigurasi karena orang ceroboh dan menimpa mereka).
Bagaimanapun, saya menggunakan nginx dan walaupun mendukung env - sepertinya tidak cukup mendukung . Anda tidak dapat menetapkan nilai env berdasarkan basis blok per server . Dengan kata lain, ini tidak akan berhasil:
server {
listen 80;
server_name domain;
env FOO = "bar";
}
Anda harus melakukan ini:
env FOO = "bar";
http {
server {
listen 80;
server_name domain;
}
}
Yang berarti saya tidak dapat memiliki nilai spesifik vhost. Jadi saya harus membuat konfigurasi vhost keseluruhan untuk setiap situs dan hanya mengaktifkan yang saya inginkan saat ini sehingga nilainya diatur dengan benar.
Apakah ada cara untuk mengatasi ini?
nginx
web-server
virtualhost
environment-variables
Xeoncross
sumber
sumber
fastcgi_pass
untuk meneruskan permintaan ke ruby / php.Jawaban:
Ternyata jika Anda menggunakan fastcgi, Anda bisa menyiasatinya dengan melewatkan nilai dari fastcgi_param .
sumber
server_name
secara dinamis? Karena ini adalah virtual host yang berjalan pada OS X, host nginx memiliki IP yang berbeda, sehingga tidak dapat diselesaikan.