අපාචේ දෝෂය “සේවාදායකයාගේ සම්පූර්ණ සුදුසුකම් ලත් ඩොමේන් නාමය විශ්වාසදායක ලෙස තීරණය කිරීමට නොහැකි විය”


458

මම මගේ Apache සේවාදායකය විධානය භාවිතා කර නැවත ආරම්භ කරන විට

sudo /etc/init.d/apache2 restart

මට පහත දෝෂය ලැබුණි:

Restarting web server apache2
apache2: 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

සේවාදායකය 127.0.0.1 වෙනුවට 127.0.1.1 භාවිතා කරනවාද? මෙම දෝෂයට හේතුව කුමක්ද?

Answers:


551

6 # 13.04 සහ ඊට වැඩි

මෙය සුහද අනතුරු ඇඟවීමක් පමණක් වන අතර එය ඇත්ත වශයෙන්ම ගැටළුවක් නොවේ (යම් දෙයක් ක්‍රියාත්මක නොවන පරිදි).

ඔබ යන්නේ නම්:

/etc/apache2/apache2.conf

ඇතුළු කරන්න:

ServerName localhost   

ටර්මිනලයට ටයිප් කිරීමෙන් අපාචේ නැවත ආරම්භ කරන්න:

sudo systemctl reload apache2

දැන්වීම අතුරුදහන් වනු ඇත.

ඔබට ඇතුළත නමක් තිබේ /etc/hostnameනම් ඒ වෙනුවට එම නමද භාවිතා කළ හැකිය localhost.


එය 127.0.1.1ඔබගේ ඇතුළත නම් එය භාවිතා කරයි /etc/hosts:

127.0.0.1 localhost
127.0.1.1 myhostname

කැමති ක්‍රමය

අපාචේ දෝශ නිරාකරණය

ඔබට මෙම දෝෂය ලැබුනේ නම්:

apache2: Could not determine the server's fully qualified domain name, 
using 127.0.0.1 for ServerName

නව ගොනුවක් සෑදීම සඳහා විධාන රේඛාවේ “sudo nano” හෝ ඩෙස්ක්ටොප් එකේ “gksudo gedit” වැනි පෙළ සංස්කාරකයක් භාවිතා කරන්න,

sudo nano /etc/apache2/conf.d/fqdn

හෝ

gksu "gedit /etc/apache2/conf.d/fqdn"

ඉන්පසු එකතු කරන්න

ServerName localhost

ගොනුව වෙත ගොස් සුරකින්න. මේ සියල්ල පහත විධානයන් සමඟ තනි විධානයකින් කළ හැකිය:

 echo "ServerName localhost" | sudo tee /etc/apache2/conf.d/fqdn

නමුත් උබුන්ටු 14.04 හි:

 echo "ServerName localhost" | sudo tee /etc/apache2/conf-available/fqdn.conf
 sudo a2enconf fqdn

".Conf" අමතක නොකරන්න (නොමැතිව වැඩ නොකරනු ඇත).


3
අපාචේ දෝශ නිරාකරණය සඳහා උබුන්ටු ලැම්ප් සැකසුම් ලේඛනයේ ද මෙය සඳහන් වේ . එහිදී ඔවුන් නිර්දේශ කරන්නේ /etc/apache2/conf.d/fqdn ගොනුවක් එහි ඇති ServerName localhostබවයි
icc97

ඉතා හොඳ පිළිතුරක් - නමුත් මම එය conf.d නාමාවලියෙහි තැබීමට නිර්දේශ කරමි :)
cwd

3
/etc/apache2/conf.d/lamp-server^14.04 දී මා ස්ථාපනය කිරීමෙන් පසු නොපවතී
redanimalwar

@redanimalwar 13.10 සඳහා සහ නවතම අය බලන්න @ ස්ටාර්ක්ස්ගේ පිළිතුර පහතින්.
ඩෑන්

3
අවසාන පියවර සඳහා (14.04 දී සම-සබැඳියක් නිර්මාණය කිරීම) sudo a2enconf fqdnතාක්ෂණික වශයෙන් සමාන විය යුතු වුවත් මම නිර්දේශ කරමි .
nuala

182

13.10 හෝ නව

13.10 වන විට පෙරනිමියෙන් ලබා ගත හැකි Apache 2.4 වන විට - ඔබට conf.dනාමාවලියෙහි වින්‍යාස ගොනුවක් එක් කිරීමේ ක්‍රමය භාවිතා කළ නොහැක .

Apache තවදුරටත් conf.dනාමාවලිය භාවිතා නොකරයි . සියලුම වින්‍යාස ගොනු ඩිරෙක්ටරිය තුළ ගබඩා කර ඇති /etc/apache2/conf-availableඅතර සියලුම වින්‍යාස ගොනු දැන් .confදිගුවක් තිබිය යුතුය .

Apache 2.4 හි මෙම පණිවිඩය විසඳීම සඳහා, අප විසින් වින්‍යාසගත කළ හැකි නාමාවලිය තුළ වින්‍යාස ගොනුවක් සෑදිය යුතුය. උදාහරණයක් ලෙස servername.conf.

sudo vi /etc/apache2/conf-available/servername.conf

මේ ඇතුළත අපි එක් පේළියක් එක් කළ යුතුයි

ServerName localhost

ඔබට පෙර විධාන දෙක එකකින් ඒකාබද්ධ කළ හැකිය:

echo "ServerName localhost" | sudo tee /etc/apache2/conf-available/servername.conf

දඩ මුදල අනුව ඩොමේන් නාමයක් හෝ වෙනත් නමක් භාවිතා කිරීමට ඔබට අවශ්‍ය නම්, ඔබට අවශ්‍ය localhostඕනෑම දෙයක් වෙනුවට ආදේශ කරන්න. ඊළඟට ඔබට මෙම වින්‍යාසය සක්‍රීය කළ යුතුය. මේ සඳහා, ඔබ පහත විධානය ක්‍රියාත්මක කළ යුතුය:

sudo a2enconf servername

a2enconfApache 2.4 හි වින්‍යාස ගොනුවක් සක්‍රීය කිරීමේ විධානයකි. servernameඉහත විධානය වින්‍යාස ගොනුවේ නමෙන් බව සලකන්න servername.conf. ඔබේ වින්‍යාස ගොනුව ngenericserver.confනම් ඔබට ලිවීමට සිදුවේ sudo a2enconf ngenericserver.

මෙයින් පසු සේවාදායකය නැවත පූරණය වන අතර ඉහත පණිවිඩය තවදුරටත් ඔබට දෝෂාරෝපණය නොකරනු ඇත.

sudo service apache2 reload

හෝ

sudo apache2ctl graceful

දැන් මෙයින් පසුව ඔබට පෙනෙනුයේ පණිවිඩය නැවත නොපෙන්වන අතර ගැටළුව විසඳනු ඇති බවයි.


4
අපාචේ විසින් කුමන වින්‍යාස ගොනුවක් සමඟ ගැටළුවක් ඇත්දැයි කීමට කිසිවෙකු දන්නවාද ? සංවර්ධකයින් මෙය කිසි විටෙකත් ඔවුන්ගේ වැරදි පණිවිඩවලට ඇතුළත් කිරීමට නොසිතන්නේ මන්දැයි මම නොදනිමි - එයට බොහෝ කේත අවශ්‍ය නොවේ!
ජෝන් වයි

මට මෙම සේවාදායකය සඳහා අන්තර්ජාල fqdm තිබේ නම්, එය තැබිය යුතු ස්ථානය මෙයද? එනම්, දේශීය හොස්ට් වෙනුවට මම myhost.org ආදේශ කළ යුතුද?
සීපීබීඑල්

1
@CPBL මෙය සියලුම වෙබ් අඩවි සඳහා පෙරනිමි සේවාදායක නාමය වනු ඇත. ඔබට ඇත්තේ එක් වෙබ් අඩවියක් පමණක් නම්, ඔබ කළ යුත්තේ එපමණයි. ඔබේ සේවාදායකයේ ඔබට අඩවි කිහිපයක් තිබේ නම්, එක් එක් වෙබ් අඩවිය සඳහා ඔවුන්ගේ අථත්‍ය ධාරක වින්‍යාසය තුළ සේවාදායක නාම විධානය එක් කිරීමට ඔබට අවශ්‍ය වනු ඇත.
ඩෑන්

1
14.04 LTS මත ක්රියා කරයි.
පාර්ටෝ

1
ඔබගේ උපුටා ගත් සබැඳිය මිය ගොස් ඇති බව පෙනේ, කරුණාකර නිවැරදි කරන්න.
ෆෙඩ්රික් ගෝස්

31

Apache 2 හට FQDN ලබා ගත හැක්කේ නිසි ලෙස වින්‍යාස කරන ලද පද්ධති ධාරක නාමයකින් වන අතර එය apache වින්‍යාස ගොනුවට තදින් කේත කර ඇත. එය කේතනය කිරීම ධාරක නාමය වෙනස් වුවහොත් ව්‍යාකූලත්වයක් ඇති කරයි. ඇත්ත වශයෙන්ම ඔබ ඕනෑම අවශ්ය නැහැ ServerNameදී නියෝග httpd.confහෝ Apache config ගොනු.

පහත සඳහන් දෑ ඇතුළත් කරන්න /etc/hosts:

# IPv4 and IPv6 localhost aliases
127.0.0.1 hostname.domainname.com  hostname  localhost
::1       hostname.domainname.com  hostname  localhost

hostname.domainname.comඔබේ යන්ත්‍රයේ FQDN කොහෙද ?

නිසි ලෙස වින්‍යාස කරන ලද ධාරක නාමයක් සමඟ /etc/hostname/හෝ සමඟ hostnamectl, මෙය ඔබගේ යන්ත්‍රයේ වෙනත් සේවාවන් නිසි ලෙස ක්‍රියාත්මක කිරීමට උපකාරී වේ (එනම් පිවිසුම් විමසුම, This is hostname.domainname.comඒ වෙනුවට පෙන්වයි This is hostname.unknown_domain.)


5
"නිසි ලෙස වින්‍යාස කරන ලද පද්ධති සත්කාරක නාමයක්" සඳහා +1. සේවාදායකය නිසියාකාරව වින්‍යාස කිරීමට මට අවශ්‍ය විය. මෙය ලොගයේ මගේ දෝෂය ද නිරාකරණය කර ඇත[warn] RSA server certificate CommonName (CN) <fqdn> does NOT match server name!?
ට්‍රාන්සිස්ටර් 1

මෙය Apache 2.2.22 සමඟ වැඩ කළ යුතු යැයි ඔබ සිතනවාද? මට තවමත් ලැබෙමින් පවතී "සේවාදායකයේ සම්පූර්ණ සුදුසුකම් ලත් ඩොමේන් නාමය විශ්වාසදායක ලෙස නිශ්චය කිරීමට නොහැකි විය, සේවාදායක නාමය සඳහා 127.0.1.1 භාවිතා කරමින්"
ඩේවිඩ් විනීකි

ඇත hostname localhostයැයි කියනු ලබන myubuntuservername localhost? නැත්නම් වචනාර්ථයෙන් ද hostname localhost? ඔබේ පිළිතුරෙන් ඔබ පැහැදිලි නැත
ජොනතන්

2
මෙය පිළිගත් පිළිතුර විය යුතුය. ඔබට FQDN ස්ථිතික IP ලිපිනය සමඟ සම්බන්ධ කිරීමට අවශ්‍ය විය හැකි බව පෙනේ 127.0.0.1.
ස්කිපි ලෙ ග්‍රෑන්ඩ් ගුරෝ

1
උබුන්ටු 18.04 හි මෙය මට හොඳම පිළිතුර විය. සම්පූර්ණ සුදුසුකම් ලත් ඩොමේන් නාමය මෙහි හෝ වෙනත් තැනක එකම පාරිභාෂිතය නොවුනත් ප්‍රලේඛනය ස්ථාවර විය යුතුයැයි මම ප්‍රාර්ථනා කරමි. මගේ සම්පුර්ණ සුදුසුකම් ලත් ඩොමේන් නාමය ගූගල්.කොම් නම් සහ මගේ සේවාදායක නාමය ගූගල් නම්, මගේ / etc / host වල මගේ ප්‍රවේශය 127.0.0.1 ගූගල්.කොම් ගූගල් වනු ඇත. ප්‍රාර්ථනා කරන්න. මම මෙය භාවිතා කළෙමි: Digitalocean.com/community/tutorials/…
NZ Dev

28
  • පර්යන්තයක් විවෘත කරන්න
  • /etc/apache2/httpd.confගොනුව විවෘත කරන්න:

    sudo editor /etc/apache2/httpd.conf # [1]
    
  • පෙරනිමියෙන් එය හිස් වනු ඇත. පහත දැක්වෙන පේළිය එක් කරන්න:

    ServerName localhost
    
  • ගොනුව සුරකිමින් පිටවන්න

  • සේවාදායකය නැවත ආරම්භ කරන්න

    sudo service apache2 restart
    

[1] පෙරනිමි සංස්කාරකය දියත් කරන්න, බලන්න sudo update-alternatives --config editor


අවසාන විධානය ක්‍රියාත්මක කිරීමෙන් පසු පහත දෝෂය ඇතිවේ ** වෙබ් සේවාදායකය නැවත ආරම්භ කිරීම apache2 / usr / sbin / apache2ctl: 87: ulimit: error setting limit (මෙහෙයුමට අවසර නැත) / usr / sbin / apache2ctl: 87: ulimit: error setting limit (මෙහෙයුම නොවේ අවසර දී ඇත) (13) අවසරය ප්‍රතික්ෂේප කරන ලදි: make_sock: 0.0.0.0:80 ඇමතීමට බැඳීමට නොහැකි විය. සවන්දීමේ සොකට් නොමැත, වසා දැමීම ල logs ු-සටහන් විවෘත කළ නොහැක ක්‍රියාව 'ආරම්භය' අසාර්ථක විය. Apache දෝෂ ලොගයෙහි වැඩි තොරතුරු තිබිය හැක. [අසමත්] ** @ green7
දීපූ

'sudo service apache2 restart' උත්සාහ කරන්න
waterloo2005

23

Apache2 හි නව අනුවාදයේ දී ඔබ මෙවැනි විධානයක් අනුගමනය කරයි:

sudo nano /etc/apache2/apache2.conf

ගොනුවේ පහත දැක්වෙන නව පේළි අවසානය එක් කරන්න:

ServerName localhost

ඉන්පසු apache2 නැවත ආරම්භ කරන්න:

sudo service apache2 restart

ඒක ඉවරයි.


6

මම එය නව ගොනුව නිර්මාණය කිරීමට ටිකක් හොඳයි සොයා /etc/conf.dඑක්කෝ වෙනස් කිරීමට බව apache2.confහෝ httpd.conf.

එය මගේ වින්‍යාස වෙනස්වීම් බෙදාහැරීමේ පැකේජයෙන් වෙන් කර තබන පුද්ගලික මනාපයකි. එබැවින් යාවත්කාලීන කිරීම් අඩු සංකීර්ණ වේ.

මම ගොනුව නිර්මාණය කරන /etc/apache2/conf.d/AAserverNameඅතර එහි අඩංගු වන්නේ:

ServerName myhost.mycomain.tld

අනෙක් යෝජනා නිසැකවම ක්‍රියාත්මක වේ.



1

එකතු කරන්න ServerName localhost

වෙත

 sudo leafpad /etc/apache2/apache2.conf

 sudo leafpad /etc/apache2/httpd.conf

එය දෝෂයක් නොවේ .. එය මිතුරන්ගේ මතක් කිරීමක් පමණි


1

නියම ServerName localhostඅථත්ය සත්කාරක කොටස් ඔබේ මානකරන ගොනු පිටත දී මෙය කිරීමට මාර්ගය වේ.

තවත් පිළිතුරු සමහරක් ඔබ වෙනස් කළ යුතු යැයි යෝජනා කරයි /etc/apache2/httpd.conf. Apache apt වෙතින් උත්ශ්‍රේණිගත වූ විට මෙම ගොනුව නැවත ලියනු ලැබේ. ඔබට නැවත ලිවීමට අවශ්‍ය නැති Apache වින්‍යාසය සඳහා, ඔබ නව ගොනුවක් සෑදිය යුතුය. මෙම වින්‍යාසය වෙනස් කිරීම සඳහා "ඩේබියන් ක්‍රමය" මෙන්න:

# create the configuration file in the "available" section
echo "ServerName localhost" | sudo tee /etc/apache2/conf-available/servername.conf
# enable it by creating a symlink to it from the "enabled" section
sudo a2enconf servername
# restart the server
sudo service apache2 restart

මෙය මූලික වශයෙන් ස්ටාර්ක්ගේ පිළිතුරට සමාන ය, නමුත් ස්ක්‍රිප්ට් ආකාරයෙන් පිටපත් කර ඇලවීම පහසුය. මා මුලින් මෙය පළ කළේ අනුපිටපතක් ලෙස සලකුණු කර ඇති ප්‍රශ්නයක ය: https://askubuntu.com/a/432408


1

මත උබුන්ටු 16,04 :

Usin gthe ServerName localhostගොනුවට එකතු කරන්න httpd.confපහත විධානය.

sudo vi  /etc/apache2/httpd.conf

ඉන්පසු Include httpd.confමෙම ගොනුවේ අවසානයේ මෙම පේළිය ඇතුළත් කරන්න

sudo vi /etc/apache2/apache2.conf

සින්ටැක්ස් දෝෂ නැවත පරීක්ෂා කරන්න

sudo apache2ctl configtest

ඔබ දැන් ලබා ගත යුතුයි

Syntax OK

වින්‍යාසය නැවත පූරණය කිරීමෙන් ඔබට දැන් සේවාදායකය නැවත ආරම්භ කළ හැකිය

sudo service apache2 reload

හෝ ක්‍රියාවලිය මරා දමා නැවත ආරම්භ කරන්න

sudo service apache2 restart

0

උබුන්ටු 11.10 හි, මගේ තැටිය පිරී ඇති නිසා එල්ලෙන ඇරඹුමක් සමඟ මෙම පණිවිඩය දුටුවෙමි. ලොග් ලිපිගොනු වලින් එකක් රළු විය . බොහෝ විට අපාචේ සමඟ ගැටළුවක් නොතිබුණි, නමුත් මෙම පණිවිඩය ආරම්භය එල්ලීමට පෙර ලබා දුන් අවසාන ඉඟිය විය.

ගැටළුව නිරාකරණය කිරීම සඳහා, මට ප්‍රතිසාධන ප්‍රකාරයට ආරම්භ වී මඟ පෙන්වන ලොග් ගොනුව ඉවත් කිරීමට සිදු විය.


0

ඔබ බාෂ් භාවිතා කරන්නේ නම් සහ අවම පරායත්තතා අවශ්‍ය නම් (ඔබට අවශ්‍ය වන්නේ එක් ලයිනර් එකක් පමණි බාෂ් නම් (ඔබ මා වැනි ඩෝකර් භාවිතා කරන්නේ නම් පිවිසුම් ලක්ෂ්‍යය නම් ), මෙම විකල්ප දෙක ක්‍රියාත්මක විය යුතුය.

ඔබට localhost අවශ්‍ය නම්:

echo "ServerName localhost" >> /etc/apache2/apache2.conf

ඔබට දැනට පවතින සත්කාරක නාමය අවශ්‍ය නම්:

echo "ServerName $(cat /etc/hostname)" >> /etc/apache2/apache2.conf

ගොනුවේ අවසානයට නූල් එකතු කිරීම සඳහා මෙය bash redirection operators භාවිතා කරයි . එකෝ ස්වයංක්‍රීයව නව රේඛාව ඇතුල් කරයි, එබැවින් ඔබ සියල්ල සූදානම් කර ඇත.


0

පහත විධානය ක්‍රියාත්මක කරන්න:

apachectl -t -D DUMP_INCLUDES

ඔබගේ httpd.confවින්‍යාස ගොනුවට මාර්ගය තීරණය කිරීම සඳහා , පසුව එම ගොනුව සංස්කරණය කර ServerNameවිකල්පය සඳහා අගය නියම කරන රේඛාව වෙනස් කිරීම / වෙනස් කිරීම , උදා.

ServerName localhost

වෙබ් සේවාදායකය සඳහා, ලියාපදිංචි DNS නම භාවිතා කරන්න (උදා example.com).

ඔබේ සත්කාරක සමාගමට ලියාපදිංචි DNS නමක් නොමැති නම්, එහි IP ලිපිනය මෙහි ඇතුළත් කරන්න.


0

මත උබුන්ටු 16,04 :

Usin gthe ServerName localhostගොනුවට එකතු කරන්න httpd.confපහත විධානය.

sudo vi  /etc/apache2/httpd.conf

ඉන්පසු Include httpd.confමෙම ගොනුවේ අවසානයේ මෙම පේළිය ඇතුළත් කරන්න

sudo vi /etc/apache2/apache2.conf

සින්ටැක්ස් දෝෂ නැවත පරීක්ෂා කරන්න

sudo apache2ctl configtest

ඔබ දැන් ලබා ගත යුතුයි

Syntax OK

වින්‍යාස කිරීමේ sudo service apache2 නැවත ආරම්භ කිරීම මඟින් ඔබට දැන් සේවාදායකය නැවත ආරම්භ කළ හැකිය

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.