For Sitefinity to work with its full functionality you need to host it with Full trust, but i decided to host it on a shared hosting for saving on cost and reliability of my host. I hosted with HostingGuru.com.
Here are the steps to deploy Sitefinity to your shared hosting with medium trust.
In medium trust you cannot use HealthMonitoring and Workflow. Depending on your host provider there could be issues related to RadUpload - uploading of files, uploading of zip, RadProgressArea should be also disabled.
Before setting the trust level to medium, make sure you modify the application web.config file as
1. Disable page and module workflow *:
type="Telerik.Cms.Data.DefaultProvider, Telerik.Cms.Data" />
2. Disable health monitoring:
3. Make sure the following lines are commented out:
4.The Sitefinity module providers cannot get their database objects created in medium trust environment and you may get errors.
To prevent this, you need to enforce database upgrade in full trust environment,
in your local Web site. Creating at least one content item in each module before uploading the upgraded
database to the production server and setting the trust level to medium will initialize all modules in the
database. The Sitefinity Search service does not work in medium trust environment.
RadMemoryOptimization requires ReflectionPermission in order to operate correctly. This means that
in normal circumstances you will have to run your application with Full Trust permissions set, unless
you create a custom security policy, which allows ReflectionPermission. If you are unable to set Full
Trust or custom security policy, the solution is to put the Prometheus controls assembly in GAC.
The Upload Control functionality is not available in medium trust environment. You need to upload the
controls manually through the application web.config file.The upload of .ZIP files in the Images & Documents module is currently not possible in medium trust environment.
5. Now copy all your files to your host
6. Give App_Data read and write permissions for ASP.Net/Network Service.
7. You can ask your host to attach the database to Sql Server, and you can then change the connection string . web.config file.
8. Log on to the Administration control and Select Administration Tab -> Services
Select Search and select "Start Indexing" on the right pane. This will index your website and now you can use the search engine.
Hope this helps, here is the sample website i have deployed http://www.planetfireworks.com/