When running the application outside the root URL ("http://localhost/here/" instead of "http://localhost/"), globalization is ignored and there is no way to get output encoded in iso-8859-1.
Instructions for reproducing this bug:
1) Create /opt/testcase/test.aspx containing:
and add a custom web.config file with:
2) Configure the app to run in the location "/here/", ie:
Alias /here "/opt/testcase" (DOESN'T WORK...globalization is ignored)
Alias / "/opt/testcase" (WORKS OK)
3) Execute test.aspx with:
(*) Note that "%F3" is the encoded "ó" character.
4) Expected result:
- Globalization was configured to encode output using iso-8859-1
- The problem is not related with the encoding configured/detected on the browser/client (the server sends a UTF-8 charset in the headers). Forcing the encoding will not work.
- It is important to notice that the encoding depends on the location ("/" or "/here")
- Apache encoding configuration is also to be ignored...I found no way to control the output encoding when running the application in "/here".
- I reproduced this bug in different Linux distributions (Ubuntu, CentOS) and mono versions (2.10.1, 2.10.5-1).