Apache sunucumu komutu kullanarak yeniden başlattığımda
sudo /etc/init.d/apache2 restart
Aşağıdaki hatayı alıyorum:
Restarting web server apache2apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName... waiting apache2:Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
Sunucu 127.0.0.1 yerine 127.0.1.1 kullanıyor mu? Ne bu hata neden olur?
13.10'dan itibaren varsayılan olarak kullanılabilen Apache 2.4'ten itibaren yapılandırma dosyası ekleme yöntemini kullanamazsınız. conf.d dizin.
Apache artık conf.d dizin. Tüm yapılandırma dosyaları içinde saklanır /etc/apache2/conf-available dizin ve tüm yapılandırma dosyaları artık bir .conf uzantı.
Apache 2.4'te bu mesajı çözmek için conf-available dizininin içinde bir yapılandırma dosyası oluşturmamız gerekiyor. Örneğin servername.conf.
sudo vi /etc/apache2/conf-available/servername.conf
Ve bunun içinde sadece bir satır eklememiz gerekiyor
ServerName localhost
Önceki iki komutu bir arada aşağıdaki komutlarla birleştirebilirsiniz::
echo "ServerName localhost" | sudo tee /etc/apache2/conf-available/servername.conf
Gereksinime bağlı olarak bir alan adı veya başka bir ad kullanmak istiyorsanız, sadece değiştirin localhost ne olursa olsun gerekir. Ardından, bu yapılandırmayı etkinleştirmeniz gerekir. Bunun için aşağıdaki komutu çalıştırmanız gerekir:
sudo a2enconf servername
a2enconf Apaches 2.4'te bir yapılandırma dosyasını etkinleştirmek için kullanılan bir komuttur. Ayrıca şunu da unutmayın servername yukarıdaki komut yapılandırma dosyasının adından gelmektedir servername.conf. Yapılandırma dosyanız ngenericserver.conf o zaman yazmak zorundasın. sudo a2enconf ngenericserver.
Bundan sonra sunucuyu yeniden yükleyin ve yukarıdaki mesaj artık sizi rahatsız etmeyecektir.
sudo service apache2 reload
veya
sudo apache2ctl graceful
Bundan sonra mesajın tekrar gösterilmeyeceğini ve sorunun giderileceğini göreceksiniz.
Apache2, fqdn'yi apache yapılandırma dosyasına kodlanmış yerine düzgün yapılandırılmış bir sistem ana bilgisayar adından da alabilir. Sabit kodlama, ana bilgisayar adı değişirse de karışıklığa neden olur. Aslında hiç ihtiyacın yok. ServerName direktifler httpd.conf veya herhangi bir apache yapılandırma dosyası.
Düzgün yapılandırılmış bir ana bilgisayar adı ile birlikte /etc/hostname/ veya ile hostnamectl bu, makinenizdeki diğer servislerin düzgün çalışmasına da yardımcı olacaktır (örn. This is hostname.domainname.com yerine This is hostname.unknown_domain.)
Belirtme ServerName localhost yapılandırma dosyalarınızda sanal ana bilgisayar bölümleri dışında bunu yapmanın yolu budur.
Diğer bazı cevaplar, değiştirmeniz gerektiğini önerir /etc/apache2/httpd.conf. Apache apt'den yükseltildiğinde bu dosyanın üzerine yazılır. Üzerine yazılmasını istemediğiniz Apache yapılandırması için yeni bir dosya oluşturmanız gerekir. İşte bu yapılandırma değişikliğini yapmanın "Debian yolu":
# create the configuration file in the "available" sectionecho "ServerName localhost" | sudo tee /etc/apache2/conf-available/servername.conf# enable it by creating a symlink to it from the "enabled" sectionsudo a2enconf servername# restart the serversudo service apache2 restart
Bu temelde Stark'ın cevabıyla aynıdır, ancak kopyalanması ve yapıştırılması kolay bir komut dosyası biçimindedir. Bunu başlangıçta yinelenen olarak işaretlenmiş bir soruda yayınlamıştım: https://askubuntu.com/a/432408