Is there an easy way to create subdomains on codeigniter like api.site.com.?
Thanks in advance.
Is there an easy way to create subdomains on codeigniter like api.site.com.?
Thanks in advance.
You need to create the subdomain in your DNS or else setup a wildcard for any subdomain to work first.
Once you've got that running I guess it's a case of switching the base_url
in your config file.
if ($_SERVER['SERVER_NAME'] == "api.blah.com") {
$config['base_url'] = "http://api.blah.com/";
}
else {
$config['base_url'] = "http://www.blah.com/";
}
The approach you take depends on how different the subdomain is from the main site. If they are very similar and will be using the same codebase:
$config['base_url'] = 'http://'.$_SERVER['HTTP_HOST'].'/';
If you need some settings to be different on a different subdomain, you could create a config file like so:
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;
}
Another approach would include setting up a separate application folder for the subdomain, but pointing at the same system folder. If you organize your filesystem like this:
example.com
common
system
application
www
htdocs
application
apl
htdocs
application
You could then point the index.php file in each htdocs folder at the common/system directory. You could also put code you want to share between all subdomains in common/application and include them from your code.