I've been scratching my head over this one for a few days now, so perhaps it's time to call for help. The general need is to have separate websites, with different Domain names, all running off the same DNN instance, but while also allowing to run different web-apps which are exclusive to a given Domain name.
To clarify, I'll explain how things are currently configured and then explain why this isn't ideal:
(1)http://MyFristDomainName/CMS is where DNN runs (a virtual directory on IIS, on the default website), we then also have
(2)http://MyFristDomainName/App1 where App1 runs (different virtual directory, different app pool, same webiste)
(3)http://MyFristDomainName/App2 etcetera (plenty of other stuff running in the default website, mostly written in-house).
We then have:
(4)http://MySecondDomainName/CMS which runs as a separate IIS website, with specific bindings for "MySecondDomaninName", same app pool as for (1). In DNN a website alias is set for the "MySecondDomaninName" specific portal, and superficially all works well.
(5)http://MySecondDomainName/App3 same website as (4) in IIS, running in its own application pool.
This superficially works. I don't see another straightforward way of configuring things because App3 need to be available only on MySecondDomainName while App1, App2 (etc.) need to be served only by MyFirstDomainNam. They are all fairly big applications themselves so I'm not keen of putting them in places like:
[...]/CMS/App1 or [...]/CMS/Portals/0/App1 (I'm not even sure this would work!).
However, my current arrangement isn't ideal because DNN is actually running twice, this isn't ideal in any case, but (I think) it's actually generating something like 3 logged errors per minute (or thereabout) because of (I presume) indexing: I get a "Scheduler Exception", then a "Scheduler Event Failure", then a "General Exception" all logged at the same time and all mentioning the same message "Unable to create Lucene writer (lock file is in use). Please recycle AppPool in IIS to release lock.". I'm pretty sure that's happening because the worker process running (1) starts indexing, creates a lock and goes on doing its business, then worker process from (4) tries to do the same, fails and complains.
Trouble is, I don't know how to disentangle this, the only ideas I could produce are:
a) Install a second DNN instance, put the portal for MySecondDomaninName in it and run two instances. This isn't ideal, because we'd still be consuming more resources than necessary and we'll double the DNN configuration/maintenance workload.
b) Use Url Rewrite to change "http://MySecondDomainName/CMS" to "http://MySecondDomainName/CMS/somealias" or something similar (I'm sure it will be possible to use Url rewrite, but might need to experiment with different options). This option is clearly not ideal because it adds a very awkward level of complexity, which may create who knows what problems down the line.
Overall I'm not keen to implement either of the possible options, so I'd really like to hear if anyone has a better idea.