I'm building a new Silverlight app for a photography studio. I was about to say "you have to have a Windows-based server hosting it" and then I thought, wait is that right? Looks like it's not. So I could point him toward a Linux host.
I know you have to register the MIME types (from a different SO thread). Are there any other caveats or gotchas that I need to know about? Assume for a second that I know next to nothing about Linux.
Edit: what if the app needs to talk to a database (mySQL)? Seems like I'd need to have Moonlight to get that going, which isn't gonna fly.
The only thing you have to do is ensure the web server delivers the correct MIME type for the .xap (which is application/x-silverlight-app). That's it.
There is nothing blocking you to host a Silverlight app(Client Plug-in) in any webserver on any platform.
Silverlight is client technology. There is nothign (but MIME types) that are required to host on non-MS servers. But if you have server-side code (e.g. web services or REST API's talking to your mySQL db), that server-side technology would need to work on Linux. That's completely separate from Silverlight. You might want to do the server stuff with Java or PHP (or other Linux-friendly platform) but Silverlight doesn't care what it talks to and can be served in a non-MS platform easily.
Regarding your edit (on mysql) -- no you would not need Moonlight (as that is client only as well). You'd need to expose your database functionality through a service layer of sorts as Shawn notes.