অ্যাপাচি 2: সার্ভারনামের জন্য 127.0.1.1 ব্যবহার করে সার্ভারের সম্পূর্ণরূপে যোগ্যতাসম্পন্ন ডোমেন নামটি বিশ্বস্তভাবে নির্ধারণ করা যায়নি


73

যখন আমি (পুনরায়) অ্যাপাচি শুরু করব তখন আমি এই সতর্কতাটি পেয়ে যাচ্ছি।

* 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 [ OK ]

এটি আমার etc/hostsফাইলের বিষয়বস্তু :

#127.0.0.1  hpdtp-ubuntu910
#testproject.localhost  localhost.localdomain   localhost
#127.0.1.1  hpdtp-ubuntu910

127.0.0.1   localhost
127.0.0.1   testproject.localhost
127.0.1.1   hpdtp-ubuntu910



# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

এটি আমার /etc/apache2/sites-enabled/000-defaultফাইলের বিষয়বস্তু :

<VirtualHost *:80>
  ServerName testproject.localhost
  DocumentRoot "/home/morpheous/work/websites/testproject/web"
  DirectoryIndex index.php
  <Directory "/home/morpheous/work/websites/testproject/web">
    AllowOverride All
    Allow from All
  </Directory>

  Alias /sf /lib/vendor/symfony/symfony-1.3.2/data/web/sf
  <Directory "/lib/vendor/symfony/symfony-1.3.2/data/web/sf">
    AllowOverride All
    Allow from All
  </Directory>
</VirtualHost>

আমি যখন যাই http://testproject.localhost, আমি একটি ফাঁকা পৃষ্ঠা পাই।

আমি কী ভুল করছি তা কি কেউ স্পট করতে পারে?

উত্তর:


52

ডিফল্টরূপে উবুন্টু অ্যাপাচি কনফিগারেশনে সার্ভারনাম নির্দিষ্ট করে না কারণ এটি আপনার সার্ভারের নাম কী তা জানে না। এটি আপনার আইপি ঠিকানার বিপরীতে অনুসন্ধান করার চেষ্টা করে, যা কিছুই দেয় না, সুতরাং এটি কেবলমাত্র IP ঠিকানাটি সার্ভারনাম হিসাবে ব্যবহার করতে হবে ।

এটি ঠিক করতে, হয় কোনও ভার্চুয়াল হোস্টের বাইরে একটি সার্ভারনাম নির্দেশিকা যুক্ত করুন - যেমন /etc/apache2/httpd.conf, আপনার প্রাথমিক আইপি ঠিকানার জন্য একটি বিপরীত ডিএনএস প্রতিক্রিয়া সেট করুন - এই ক্ষেত্রে, 127.0.1.1

এটি এড়ানোও পুরোপুরি ঠিক fine


3
এটি পাল্টা স্বজ্ঞাত। যদি আমি কোনও ভার্চুয়াল হোস্টের বাইরে সার্ভারনামটি যুক্ত করি - একই অ্যাপাচি সার্ভার থেকে কীভাবে আমি একাধিক ভার্চুয়াল হোস্ট পরিবেশন করতে পারি? (এটি পুরোপুরি, নামযুক্ত ভার্চুয়াল সার্ভারের বিন্দু) - UNLESS, আপনি বলছেন যে আমার কাছে 1 টিরও বেশি সার্ভারনাম প্রবেশ থাকতে পারে (বলুন) /etc/apache2/httpd.conf
user35402

7
তারপরে আপনি ভার্চুয়ালহস্ট ব্লকগুলির মধ্যে সার্ভারনাম / সার্ভারএলিয়াস যুক্ত করতে পারেন যাতে ভার্চুয়ালহস্ট কেবলমাত্র আপনার পছন্দমতো হোস্টের সাথে মেলে। নিম্ন- ডাউনের জন্য httpd.apache.org/docs/2.2/mod/core.html#servername পড়ুন ।
crb

আমি এক ঘন্টা ধরে এই উত্তরটি সন্ধান করছি। এটি সম্পর্কে ইন্টারনেটে এত বাজে কথা, তবে এটি আমার সমস্যাটিকে স্থির করেছে। থেক্স
মাইক

@ মাইক আপনি এবং অন্যরা প্রতিভা! আমি এই উত্তরটি চার দিনের জন্য সন্ধান করেছি । (ঠিক আছে, পুরোপুরি কাজের দিন নয়)) +1 কারণ এটি প্রথম উত্তর যা ব্যাখ্যা করে যে আমি কোনও ভার্চুয়াল হোস্টের বাইরে কোনও সার্ভারনাম নির্দেশকে তাদের প্রভাবিত না করে যুক্ত করতে পারি। এই বিষয়টি মাথায় রেখেই, রাইনআউটস সমাধান আমার পক্ষে কাজ করেছে (তাঁর কাছেও +1)।
সনি সান্টোস

27

এখানে একটি দ্রুত ঠিক করা আছে:

echo ServerName $HOSTNAME > /etc/apache2/conf.d/fqdn

ধন্যবাদ। / ইত্যাদি / হোস্ট বা httpd.conf ব্যবহার করে ফিক্সগুলির কোনওটিই আমার পক্ষে কাজ করে নি, তবে এটি করেছে।
রায়ান

1
এটি উবুন্টু ১৩.০৪ এপাচে 2 চালিয়ে ফিক্সড, আপনাকে ধন্যবাদ!
dmanexe

16

সেই সতর্কতার আশেপাশের আরেকটি উপায় হ'ল সম্পূর্ণরূপে যোগ্যতাসম্পন্ন ডোমেন নামটি 127.0.1.1লাইনে রাখা /etc/hosts। এমনকি এটি এমন কোনও এফকিডিএন হতে হবে না যা আসলে কোনও ডিএনএস সার্ভারের কোনও কিছুর সমাধান করবে।

127.0.1.1  hpdtp-ubuntu910.lan  hpdtp-ubuntu910

কৌতুকটি করবে, সেই সাথে কোনও প্রোগ্রামের আচরণ সংরক্ষণ করবে যা অতিরিক্ত প্রত্যাশা করে না .lan। আদেশ গুরুত্বপূর্ণ; আরও স্তরের নামগুলি প্রথমে নির্দিষ্ট করা উচিত, উদাহরণ হিসাবে যেখানে .lanঠিকানাটি অন্য ঠিকানার আগে আসে।


7

এই সমাধানটি আমার উন্নয়নের প্রয়োজনগুলির জন্য কাজ করে:

পটভূমি:

ডেবিয়ান লিনাক্স সিড:
ভার্চুয়ালহোস্ট বিকাশ: আমার 10 টি সার্ভারের নাম রয়েছে (সাইটগুলির মধ্যে 10 টি ভার্চুয়ালহোস্ট এন্ট্রি রয়েছে)

আমি প্রত্যেককে ভিতরে একটি অনন্য লোকালহোস্ট আইপি ঠিকানা নিযুক্ত করেছি /etc/hosts:

127.0.0.1   joe   localhost.localdomain   localhost
127.0.1.1   joe
127.0.1.2   joomla
127.0.1.3   schmoo
127.0.1.4   forrest
127.0.1.5   store
127.0.1.6   publisher
127.0.1.7   studios
127.0.1.8   drupal
127.0.1.9   graphics
127.0.1.10  wordpress
...

The following lines are desirable for IPv6 capable hosts

::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

আপনি যদি অন্য ভার্চুয়ালহোস্ট যুক্ত করতে যাচ্ছেন (বিকাশের জন্য আমার কাছে বেশ কয়েকটি আছে) অন্য লোকালহোস্ট আইপি ঠিকানায় একটি এন্ট্রি যুক্ত করুন এবং অ্যাপাচি ২.২ পুনরায় চালু করার আগে সাইটটি সক্ষম করুন:

127.0.0.11 *newhost*

প্রতিটি প্রবেশের জন্য আপনি ভার্চুয়ালহোস্ট ফাইল হিসাবে সক্ষম করতে চান:

জন্য / etc / apache2 / সাইট-উপলব্ধ /

জো জুমলা স্কু ফরস্ট স্টোর প্রকাশক স্টুডিওগুলি ড্রুপাল গ্রাফিক্স ওয়ার্ডপ্রেস

সমস্ত ভার্চুয়ালহোস্টগুলি a2ensite / a2dissite হোস্টনামের মাধ্যমে সক্ষম / অক্ষম করা আছে

ত্রুটি দমন করতে

ওয়েব সার্ভার পুনঃসূচনা: apache2apache2: সার্ভারনামের জন্য 127.0.0.1 ব্যবহার করে সার্ভারের সম্পূর্ণরূপে যোগ্যতাসম্পন্ন ডোমেন নামটি বিশ্বস্তভাবে নির্ধারণ করা যায়নি ... অপ্যাপা 2 অপেক্ষা করছে: সার্ভারনাম '' এর জন্য 127.0.0.1 ব্যবহার করে সার্ভারের সম্পূর্ণ যোগ্যতাসম্পন্ন ডোমেন নামটি বিশ্বস্তভাবে নির্ধারণ করা যায়নি

সম্পাদন করা httpd.conf মধ্যে /etc/apache2/httpd.conf[ডেবিয়ান মধ্যে খালি ফাইল]:

ServerName 127.0.1.1

তারপরে আপনি যে সমস্ত নাম যুক্ত করেছেন , মন্তব্য করেছেন বা লাইনটি নিচে অক্ষম করেছেন তার জন্য সন্ধান করুন resolved

আপনি যদি ভুলে যান: একমাত্র ভার্চুয়ালহোস্ট *: 80 এন্ট্রিটি কেবল পোর্টস কনফ ফাইলের মধ্যে থাকা দরকার ,

/etc/apache2/ports.conf

**NameVirtualHost *:80**
Listen 80

<IfModule mod_ssl.c>
   # If you add NameVirtualHost *:443 here, you will also have to change
   # the VirtualHost statement in /etc/apache2/sites-available/default-ssl
   # to <VirtualHost *:443>
   # Server Name Indication for SSL named virtual hosts is currently not
   # supported by MSIE on Windows XP.
   Listen 443
</IfModule>

<IfModule mod_gnutls.c>
   Listen 443
</IfModule>

আপনার ভার্চুয়ালহোস্টের মধ্যে ভার্চুয়ালহোস্ট *: 80 ছাড়ুন

উদাহরণ: ভার্চুয়ালহোস্ট জো

<VirtualHost *:80>
    **ServerAlias joe**
    **...**
</VirtualHost>

6

Httpd.conf ServerNameএ সেট করা আমার পক্ষে কার্যকর হয়নি। আমি সেট করে এটি সংশোধন করা ServerName 127.0.0.1মধ্যে /etc/apache2/conf.d/name

আমি উবুন্টু 12.10 আলফা 3 চালাচ্ছি এবং ServerNameউভয় দাগেই সংজ্ঞায়িত করেছি ।

উত্স: http://linuxconfig.net/manual-howto/error-solution-could-not-reliably-determine-the-servers-fully-qualified-domain-name.html


শীতল, এটি আমার পক্ষেও কাজ করেছিল, একই সমস্যা ছিল।
প্রিয়ঙ্ক বলিয়া

5

আপনি একটি সার্ভার কনফিগারেশন স্তরের সার্ভারনাম এন্ট্রি মিস করছেন। অ্যাপাচি এর ডিফল্ট হিসাবে ব্যবহার করার জন্য আপনার যে কোনও হোস্টের বাইরে সার্ভারনাম এন্ট্রি থাকা দরকার।

ভার্চুয়ালহোস্টের মধ্যে একটি সার্ভারনাম প্রবেশ করা সমস্যার সমাধান করবে না। সার্ভারনাম নির্দেশিকা দেখুন ।


3

এটি ঠিক করার জন্য, আমাদের /etc/apache2/httpd.conf বা /etc/apache2.conf সম্পাদনা করতে হবে এবং নিম্নলিখিত লাইনটি যুক্ত করতে হবে:

ServerName nameofserver

1
তুমি ঠিক বলছো! তবে এই উত্তরটি কোনও নতুন তথ্য বা অন্তর্দৃষ্টি না দিয়ে crb এর উত্তরের সামগ্রীটিকে নকল করে। আমি এটিকে মুছতে বা আরও বিশদ যুক্ত করার কথা বিবেচনা করব যা অন্য লোকের উত্তর থেকে পৃথক।
রইস উইলিয়ামস

1

আমি বিশ্বাস করি আপনাকে ServerNameডিফল্ট ভার্চুয়াল হোস্টের জন্য যোগ করতে হবে । যেহেতু এটি সেখানে নেই তাই এটি ডিফল্ট আইপি ঠিকানা নিচ্ছে। এবং এটি এক ধরণের সতর্কতা। আমার ওয়েব সার্ভারটি এখনও কার্যকর হবে বলে আমার ধারণা।


আমি আপনার মন্তব্য বুঝতে পারি না। আমার ফাইলে সার্ভারনামটি ইতিমধ্যে রয়েছে: <ভার্চুয়ালহোস্ট 127.0.0.1:8080> সার্ভারনাম mysite.localhost আপনি কি আপনার মন্তব্যটি পরিষ্কার করতে পারেন?

1
-ডিফল্ট-ভার্চুয়ালহোস্টের জন্য, কেবল একটি নির্দিষ্ট ভার্চুয়ালহোস্ট নয়।
Kzqai

0
  1. আপনাকে নিম্নলিখিত পদক্ষেপগুলি ব্যবহার করে আপনার httpd.conf ফাইলটিতে সার্ভারনাম যুক্ত করতে হবে

    sudo gedit /etc/apache2/httpd.conf
    

    ডিফল্টরূপে httpd.confফাইল ফাঁকা থাকবে। এখন, কেবল ফাইলটিতে নিম্নলিখিত লাইনটি যুক্ত করুন।

    ServerName localhost
    

    ফাইলটি সংরক্ষণ করুন এবং এ থেকে প্রস্থান করুন gedit। অবশেষে সার্ভারটি পুনরায় চালু করুন।

    sudo /etc/init.d/apache2 restart
    

2) Include httpd.confএর শেষে যুক্ত করুনapache2.conf


-1

যদি ইনস্টল করার পরে যদি কোনও httpd.conf ফাইল ইতিমধ্যে আপনার ইত্যাদি / অ্যাপাচি 2 ডিরেক্টরিতে উপস্থিত না থাকে, তবে মূল অ্যাপাচি কনফিগারেশন ফাইল, অ্যাপাচি 2 কনফ এর কোনও রেফারেন্স থাকবে না সুতরাং তৈরি হওয়া httpd.conf এ কিছু যুক্ত করা যাবেনা কিছু. আপনি কেবল তার পরিবর্তে apache2.conf ফাইলটিতে "সার্ভারনাম হোস্টনাম" লাইনটি যুক্ত করতে পারেন।


-1

/ ইত্যাদি / হোস্টগুলির এখনও এই প্রবেশগুলি রয়েছে। (আমি উপরে কিছু উত্তর এড়িয়ে গেছি)

127.0.0.1 লোকালহোস্ট 127.0.0.1 টেস্টপ্রজেক্ট.লোকালহোস্ট

উভয়ের আইপি ঠিকানা 127.0.0.1 এখানে একই।

লুপব্যাক আইপি সাবনেট থেকে টেস্টপ্রজেক্ট.লোক্যালহোস্টকে বিভিন্ন আইপি ঠিকানা দিন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.