Môi trường của chúng tôi có các máy chủ được đặt tên như vậy:
sản phẩm-ứng dụng-01
sản phẩm-ứng dụng-02
ứng dụng thử nghiệm-01
ứng dụng thử nghiệm-02
Tôi đã sử dụng Sudo hostnamectl set-hostname test-app-02
trên mỗi máy chủ (mỗi lần thay đổi tên phù hợp) để đặt tên xuất hiện trong thiết bị đầu cuối. Bây giờ tôi muốn sử dụng cùng một tên trong Apache để xác định máy chủ nào đã đáp ứng yêu cầu web bằng cách xem trong các tiêu đề HTTP.
Bên trong Apache /etc/apache2/sites-enabled/000-default.conf
tập tin tôi đã đặt:
Bộ tiêu đề X-Server: test-app-02
Tuy nhiên, điều này đòi hỏi tôi phải thực hiện cùng một thay đổi ở hai nơi mỗi lần. Máy của chúng tôi được nhân bản, vì vậy hãy giữ nguyên cài đặt từ máy này sang máy khác. Tôi muốn có thể chỉ sử dụng Sudo hostnamectl set-hostname test-app-02
và thay đổi đó cũng được phản ánh trong Apache (có thể sau khi khởi động lại), tuy nhiên, có vẻ như Apache không có quyền truy cập vào thông tin đó.
Tôi đã thử thiết lập TÊN MÁY CHỦ
như một biến môi trường nhưng tôi đã không thành công trong việc khiến Apache sử dụng nó (Bộ tiêu đề X-Server: "%{env:HOSTNAME}"
, Bộ tiêu đề X-Server: "%{HOSTNAME}e"
, v.v.), nhận được một trong hai Máy chủ X:
hoặc Máy chủ X: (không)
trong tiêu đề mỗi lần. Có vẻ như các chức năng khác như tên máy chủ
(có sẵn trên thiết bị đầu cuối) không có sẵn trong Apache .conf
các tập tin.
Có cách nào để thực hiện thay đổi này chỉ ở một nơi và thay đổi đó được phản ánh ở cả hai nơi không?