Question

Having some problems installing BlogEngine.NET onto my CentOS mod_mono 2.8 (mono 2.8.1) box.

The BlogEngine.NET code references a folder named 'Bin'. On looking at the contents of the directory, there is a folder called 'bin' - the normal place for the compiled source to reside.

Renaming the folder to 'Bin' is not an option, as this will cause mono problems (it requires the folder to be called 'bin').

I came accross this: http://www.mono-project.com/IOMap

Which suggests that IOMap in Mono will make mono 'ignore' case sensitivity.

I added MONO_IOMAP=all to my env, from su, and it appears when I call env However, this doesn't seem to work - it is still case sensitive.

I then added MonoSetEnv MONO_IOMAP=all to my apache vhosts file for a specific subdomain, and this still doesn't work.

Any ideas what I am doing wrong? Am I being blind and not adding MONO_IOMAP=all to env for any other users than root?


Update: My hosts.conf for this site looks like:

<VirtualHost *:80>
    ServerAdmin webmaster@host.net
    DocumentRoot /home/host/www/host.net/blog
    ServerName blog.host.net
    ErrorLog /home/host/www/host.net/logs/blog.host.net-error.log
    TransferLog  /home/host/www/host.net/logs/blog.host.net-access.log
    CustomLog /home/host/www/host.net/logs/blog.host.net-access_combined.log combined

    DirectoryIndex index.html index.aspx

    MonoServerPath blog.host.net "/usr/local/bin/mod-mono-server2"
    MonoExecutablePath blog.host.net "/usr/local/bin/mono"
    MonoDebug blog.host.net true
    MonoSetEnv blog.host.net MONO_IOMAP=all
    MonoApplications blog.host.net "/:/home/host/www/host.net/blog"

    <Location "/">
            Allow from all
            Order allow,deny
            MonoSetServerAlias blog.host.net
            SetHandler mono
            SetOutputFilter DEFLATE
            SetEnvIfNoCase Request_URI "\.(?:gif|jpe?g|png)$" no-gzip dont-vary
    </Location>
    <IfModule mod_deflate.c>
            AddOutputFilterByType DEFLATE text/html text/plain text/xml text/javascript
    </IfModule>
</VirtualHost>
Was it helpful?

Solution

Try to set MonoSetEnv with server alias, for example my configuration of virtual host looks like this:

DocumentRoot /var/www/my.domain.com/
ServerName my.domain.com

MonoServerPath mydomaincom /usr/local/bin/mod-mono-server4
MonoSetEnv mydomaincom MONO_IOMAP=all
AddMonoApplications mydomaincom "/:/var/www/my.domain.com/"

<Location />
    Allow from all
    Order allow,deny
    MonoSetServerAlias mydomaincom
    SetHandler mono
    SetOutputFilter DEFLATE
    SetEnvIfNoCase Request_URI "\.(?:gif|jpe?g|png)$" no-gzip dont-vary
</Location>
<IfModule mod_deflate.c>
    AddOutputFilterByType DEFLATE text/html text/plain text/xml text/javascript
</IfModule>

OTHER TIPS

I was able to resolve this by simply adding MonoSetEnv MONO_IOMAP=all to my httpd.conf configuration file (usually located at /etc/apache2/httpd.conf).

MonoSetEnv MONO_IOMAP=all
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top