Is there an easy way to create subdomains on codeigniter like api.site.com?
Rather than registering a new domain name, you can always create a subdomain using your existing domain name. A subdomain is an addon to your primary domain with its unique content. It is a separate part of your website that operates under the same primary domain name without you purchasing a new domain.
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.
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/";
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With