मुझे IP पते के एक समूह के साथ एक सर्वर मिला है, और मैं केवल अपाचे को उनमें से एक पर सुनना चाहता हूं। यह करने के लिए एक कठिन बात की तरह नहीं लगता है, और मैंने इसे थोड़ी देर पहले एक बार किया है, लेकिन मुझे इस समय कुछ परेशानी हो रही है। सबसे पहले, यहाँ अब मैं अपनी समझ पर हूँ:
हर जगह अपाचे 80 पोर्ट को सुन रहा है, यह केवल सही आईपी पर सुन रहा है।
/etc/apache2$ grep -R ":80" .
./sites-available/default:<VirtualHost 192.168.0.82:80>
./httpd.conf:<VirtualHost 192.168.0.82:80>
./ports.conf:NameVirtualHost 192.168.0.82:80
./sites-enabled/000-default:<VirtualHost 192.168.0.82:80>
0.0.0.0 पर सुनने का कोई उल्लेख नहीं है।
/etc/apache2$ grep -R "0\.0\.0\.0" .
और फिर भी ... अपाचे शुरू करने से इनकार करता है।
/etc/apache2$ sudo /etc/init.d/apache2 start
* Starting web server apache2
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
Action 'start' failed.
The Apache error log may have more information.
[fail]
यदि कोई पूछता है, तो मैं उस पते पर नहीं हूँ:
/etc/apache2$ sudo netstat -nap | grep :80
tcp 0 0 192.168.0.83:80 0.0.0.0:* LISTEN 2822/node
त्रुटि लॉग /var/log/apache2/error.log
केवल कहता है:
[Wed Aug 08 03:30:18 2012] [notice] caught SIGTERM, shutting down
क्या मुझे अपाचे के विन्यास में कोई स्थान नहीं मिला है? क्या कुछ ऐसा है जिसे मैं याद नहीं रख रहा हूँ? यह इतना सरल क्यों नहीं है जितना मुझे याद है कि यह होने के नाते?
Listen 192.168.0.82:80
लाइन थी, जो मुझे चाहिए थी। मैंने cjc के उत्तर का चयन किया क्योंकि यह थोड़ा और गहराई में चला गया क्योंकि उस लाइन की आवश्यकता क्यों थी। मैंने सोचा कि अपाचे के संस्करण में इस्तेमाल की गई टिप्पणियों का उल्लेख करना जो सेंटो के साथ पैक किया गया है, एक अच्छा जोड़ था। लेकिन जब से सभी को सामान्य समझौते में लगता है कि जवाब को विराम देना चाहिए, मैंने आगे बढ़कर उसे दिया है। आखिरकार, मैंने उन संशोधनों को देखते हुए गौर किया जो पॉज़का की टिप्पणी ने अपने वर्तमान स्वरूप में cjc के उत्तर को काफी प्रभावित किया।