मैं हाल ही में सभी उप-डोमेन को एक परीक्षण डोमेन के लिए इंगित करना चाहता था, चलो उदाहरण के लिए कहते हैं। 127.0.0.1 को हल करने के लिए * .example.com पर सभी अनुरोधों को इंगित करने का एक तरीका है
जवाबों:
ऐसा होता है कि /etc/hosts
फ़ाइल वाइल्ड कार्ड प्रविष्टियों का समर्थन नहीं करती है।
आपको dnsmasq जैसी अन्य सेवाओं का उपयोग करना होगा। इसे dnsmasq में सक्षम करने के लिए, बस dnsmasq.conf
निम्नलिखित पंक्ति को संपादित करें और जोड़ें:
address=/example.com/127.0.0.1
यहाँ मूल लक्ष्य को पूरा करने की कोशिश करने वालों के लिए विन्यास है (सभी एक ही कोडबेस की ओर इशारा करते हुए वाइल्डकार्ड - कुछ भी स्थापित न करें, देव वातावरण अर्थात, XAMPP)
फ़ाइल: / etc / होस्ट (गैर-विंडोज़)
127.0.0.1 example.local
फ़ाइल: /XAMPP/etc/httpd.conf
# Virtual hosts
Include etc/extra/httpd-vhosts.conf
फ़ाइल: XAMPP / etc / extra / httpd-vhosts.conf
<VirtualHost *:80>
ServerAdmin admin@example.local
DocumentRoot "/path_to_XAMPP/htdocs"
ServerName example.local
ServerAlias *.example.local
# SetEnv APP_ENVIRONMENT development
# ErrorLog "logs/example.local-error_log"
# CustomLog "logs/example.local-access_log" common
</VirtualHost>
फिर से शुरू करें
जहाँ भी आप चाहते हैं के रूप में save.pac सहेजें और फिर ब्राउज़र के नेटवर्क में फ़ाइल लोड करें> प्रॉक्सी> auto_configuration सेटिंग्स (यदि आप इसे बदलते हैं तो पुनः लोड करें)
function FindProxyForURL(url, host) {
if (shExpMatch(host, "*example.local")) {
return "PROXY example.local";
}
return "DIRECT";
}
dnsmasq का उपयोग करें
दिखावा कर रहे हैं कि आप एक डेबियन-आधारित डिस्ट (ubuntu, टकसाल ..) का उपयोग कर रहे हैं, यह जांचें कि क्या यह स्थापित है
(sudo) systemctl status dnsmasq
अगर यह सिर्फ विकलांग है तो इसे शुरू करें
(sudo) systemctl start dnsmasq
यदि आपको इसे स्थापित करना है, तो लिखें
(sudo) apt-get install dnsmasq
/etc/dnsmasq.conf
इस तरह संपादित करने के लिए डोमेन को परिभाषित करने के लिए
address=/example.com/127.0.0.1
to समाधान * .example.com
! परिवर्तनों के लिए प्रभावी होने के लिए आपको dnsmasq को पुनः लोड करने की आवश्यकता है!
systemctl reload dnsmasq