2010-10-06 17 views

उत्तर

8

आपके द्वारा लिया जाने वाला दृष्टिकोण इस बात पर निर्भर करता है कि मुख्य साइट से सबडोमेन कितना अलग है। वे बहुत समान हैं और एक ही codebase का उपयोग करेंगे, तो:

$config['base_url'] = 'http://'.$_SERVER['HTTP_HOST'].'/'; 

आप कुछ सेटिंग्स की जरूरत है अलग उप डोमेन पर अलग होने के लिए आपको एक कॉन्फ़िग फ़ाइल इसलिए की तरह बना सकते हैं:

switch($_SERVER['HTTP_HOST']){ 
    case 'www.example.com': 
     // settings specific to www subdomain 
     $config['foo'] = 'bar'; 
    break; 

    case 'apl.example.com': 
     // settings specific to apl subdomain 
     $config['foo'] = 'baz'; 
    break; 
} 

एक और दृष्टिकोण में सबडोमेन के लिए एक अलग एप्लिकेशन फ़ोल्डर स्थापित करना शामिल होगा, लेकिन उसी सिस्टम फ़ोल्डर पर इंगित करना होगा। आप इस तरह से अपने फाइल सिस्टम को व्यवस्थित हैं:

example.com 
    common 
    system 
    application 
    www 
    htdocs 
    application 
    apl 
    htdocs 
    application 

फिर आप आम/प्रणाली निर्देशिका में प्रत्येक htdocs फ़ोल्डर में index.php फ़ाइल इंगित कर सकता है। आप कोड को सामान्य/एप्लिकेशन में सभी सबडोमेन के बीच साझा करना चाहते हैं और उन्हें अपने कोड से शामिल कर सकते हैं।

2

आपको अपने DNS में सबडोमेन बनाने की आवश्यकता है या फिर किसी भी सबडोमेन के लिए पहले काम करने के लिए वाइल्डकार्ड सेट करना होगा।

एक बार जब आप इसे चलाते हैं तो मुझे लगता है कि यह आपकी कॉन्फ़िगरेशन फ़ाइल में base_url स्विच करने का मामला है।

if ($_SERVER['SERVER_NAME'] == "api.blah.com") { 
    $config['base_url'] = "http://api.blah.com/"; 
} 
else { 
    $config['base_url'] = "http://www.blah.com/"; 
} 
संबंधित मुद्दे

 संबंधित मुद्दे