I haven't faced this requirement before, so I'm not confident with my solution. Our team drew up a plan to design a web application using a basic HAT stack for a project with a 4 month development time. We presented it to the client, who added two big new requirements. The requirements were:
- The application must be runnable on any web server (IIS, Apache, Nginx, Lighttpd, etc...)
- The application must be able to work with any database (MySQL, MongoDB, etc...)
His reasoning is that he has no control over the environments where the web application will be installed on. He plans on re-selling our solution to other customers.
We pushed back to the client saying that this would increase development time, but he has already committed to his clients. However, he said he is willing to put as much money into it to get it done.
The only solution I could think of was building the application in Perl CGI script as that seems the most universal, then having a variety of database adapters to plugin into an ORM, which is customized through a config file.
- What alternatives are there to creating a web application where we have no control over what modules, etc.. are installed in the web server?
- Is this even possible?