Last modified: 2010-05-15 15:51:58 UTC

Wikimedia Bugzilla is closed!

Wikimedia has migrated from Bugzilla to Phabricator. Bug reports should be created and updated in Wikimedia Phabricator instead. Please create an account in Phabricator and add your Bugzilla email address to it.
Wikimedia Bugzilla is read-only. If you try to edit or create any bug report in Bugzilla you will be shown an intentional error message.
In order to access the Phabricator task corresponding to a Bugzilla report, just remove "static-" from its URL.
You could still run searches in Bugzilla or access your list of votes but bug reports will obviously not be up-to-date in Bugzilla.
Bug 10881 - If page title contains Umlaut the link on edit page is wrong
If page title contains Umlaut the link on edit page is wrong
Status: RESOLVED WORKSFORME
Product: MediaWiki
Classification: Unclassified
Internationalization (Other open bugs)
1.10.x
PC Windows XP
: Normal normal (vote)
: ---
Assigned To: Nobody - You can work on this!
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2007-08-11 13:20 UTC by Hilko
Modified: 2010-05-15 15:51 UTC (History)
1 user (show)

See Also:
Web browser: ---
Mobile Platform: ---
Assignee Huggle Beta Tester: ---


Attachments

Description Hilko 2007-08-11 13:20:07 UTC
In the German version of Wikipedia it is possible without problems to use Umlaut letters in the page title. There is only one obstacle: when you edit the page and klick the save button, not the saved page will appear but an error page saying that this page does not exist and the title is not valid. But this is not the case. The page exists an can be accessed by a normal link. It is only the edit page/save button of that specific page that produces the error page.

Example:

Page URL: .../index.php?title=Qualit%C3%A4tsmanagement

correct link: [[Qualitätsmanagement]] (which is automaticly changed into the correct URL by the system: [[.../index.php?title=Qualit%C3%A4tsmanagement]]

edit page/save button link: [[.../index.php?title=Qualit%C3%A4tsmanagement&action=submit]]

This looks as if the save button produces the correct link, but this link than is not processed in a correct way.

As Umlaut letters are very common in German language, a solution would be very helpful.
Comment 1 Brion Vibber 2007-08-11 13:55:49 UTC
If that were the case, nothing would have worked for the last several years.

So... seems to work fine.

Can you show us *exactly* where this happens and how to reproduce it?

Is it on Wikipedia?

Or is it on your own server?

What browser? What software? What server? Etc.
Comment 2 Hilko 2007-08-11 16:30:48 UTC
First:

I did not mean Wikipedia but MediaWiki, sorry for that.

Second:

It happens on my installation: http://www.fb3-fh-frankfurt.de/fb3-wiki

on a hosted server (1&1 Germany), MySql

I opened a temporary test account for you to enter this site:

login:Testaccount pw:redhorse

it happens with ie7 and firefox 2006

Third:

In addition to my report I have now seen, that the errorpage contains two times a useless "25":

http://www.fb3-fh-frankfurt.de/fb3-wiki/index.php?title=Qualit%25C3%25A4tsmanagement


Comment 3 Brion Vibber 2007-08-11 16:47:40 UTC
There seems to be some kind of interference with the HTTP redirects which is adding a double-escape.

To confirm what level it's at, could you try putting up the following little PHP script?

<?php
header('Location: http://www.fb3-fh-frankfurt.de/fb3-wiki/index.php?title=%C3%89');
header('X-testing: http://www.fb3-fh-frankfurt.de/fb3-wiki/index.php?title=%C3%89');
?>

Please let me know the URL to this script so I can poke at it and see what the returned headers are.
Comment 5 Hilko 2007-08-11 18:06:20 UTC
http://www.fb3-fh-frankfurt.de/fb3-wiki/test1.php 


Could my .htaccess file have caused this error:

AddType x-mapp-php5 .php

RewriteEngine On

RewriteCond %{HTTP_HOST} ^fb3-fh-frankfurt\.de$ [NC]

RewriteRule ^(.*)$ http://www.fb3-fh-frankfurt.de/fb3-wiki/$1 [R=301,L]




Comment 6 Hilko 2007-08-13 10:34:03 UTC
From my point of view: not resolved!
Comment 7 Rob Church 2007-08-13 16:19:18 UTC
WORKSFORME refers to the condition where things are behaving as expected for most people, and where the problem is likely due to local misconfiguration. Since BugZilla is not a support tracker, we don't keep "support bugs" open for long.
Comment 8 Hilko 2007-08-13 17:55:21 UTC
I am sorry if I gave the impression that I meant this bug tracker should solve a possible misconfiguration on my server. What I meant was that from my point of view there is a bug in the German localisation (which of course could also be seen as a "local misconfigurating" not affecting "most people").

Maybe I misunderstood Brion not posting any further comment after testing my system. Did he/you find out positivly that the error is due to misconfiguration on my server and not a bug of the German localisation?

I would appreciate any hint.  

Comment 9 Brion Vibber 2007-08-13 17:57:03 UTC
There is no bug in the German localization, certainly none known.

There is probably a bug in your server's configuration or your server software. I'm still waiting for you to fix the problem I mentioned in my reply to your email so I can test that script I had you put up.
Comment 10 Hilko 2007-08-14 13:13:23 UTC
I am sorry but I didn't receive your reply on my email. Could you post it here? Thank you.
Comment 11 Brion Vibber 2007-08-21 21:58:08 UTC
> Dear Brion,
> 
> Thank you for your help.
> 
> 
> The address of the PHP script is:
> 
> http://www.fb3-fh-frankfurt.de/fb3-wiki/test1.php

Can you remove the line breaks from the strings? Those need to be on one
line each.

> Could my .htaccess file have caused this error:
> 
> AddType x-mapp-php5 .php
> 
> RewriteEngine On
> 
> RewriteCond %{HTTP_HOST} ^fb3-fh-frankfurt\.de$ [NC]
> 
> RewriteRule ^(.*)$ http://www.fb3-fh-frankfurt.de/fb3-wiki/$1 [R=301,L]

Possibly, though that _should_n't be applying to the
www.fb3-fh-frankfurt.de vhost.

-- brion
Comment 12 Hilko 2007-08-22 09:14:03 UTC
Thank you. I have removed the line breaks, sorry.
Comment 13 Brion Vibber 2007-08-22 21:38:41 UTC
Ok, I can confirm that the minimal script redirects correctly. With some further testing and your rewrite rule to compare against, I think we've got it figured out.

For an example without editing, first we hit the wiki with a non-normalized URL like this one -- the page title here is lowercase 'é':
http://www.fb3-fh-frankfurt.de/fb3-wiki/index.php?title=%C3%A9

The wiki sees the lowercase letter 'é' and redirects us to the canonical capital form 'É', just as it redirects us to view a page after editing:
HTTP/1.x 301 OK
Location: http://fb3-fh-frankfurt.de/fb3-wiki/index.php?title=%C3%89

The interesting thing here is that we got redirected to the hostname *without* 'www.' on the front: fb3-fh-frankfurt.de. That would most likely be because the web server is telling PHP that 'fb3-fh-frankfurt.de' is its hostname, so MediaWiki obeyingly uses this hostname when constructing full URLs, such as the HTTP spec requires for Location: headers in redirects.

Now, the browser makes the request:

http://fb3-fh-frankfurt.de/fb3-wiki/index.php?title=%C3%89

which hits your rewrite rule and gives us back the mangled URL:

HTTP/1.x 301 Moved Permanently
Location: http://www.fb3-fh-frankfurt.de/fb3-wiki/index.php?title=%25C3%2589


There are two things you want to fix here.

First, fixing the rewrite rule which mangles your redirects; you might try the 'noescape' or 'NE' option on the rewrite line, but I'm not sure whether it'll help:

RewriteRule ^(.*)$ http://www.fb3-fh-frankfurt.de/fb3-wiki/$1 [R=301,NE,L]


Second, tweaking the setup so that you don't go through these extra redirects in the first place. I recommend setting the ServerName directive in Apache if possible:

ServerName www.fb3-fh-frankfurt.de

If that's not possible, you can override the detection in MediaWiki by adding this to LocalSettings.php:

$wgServer = 'http://www.fb3-fh-frankfurt.de';

That should send you to your preferred URL in the first place (with the www.), avoiding the extra layer of redirects.
Comment 14 Hilko 2007-09-06 20:34:54 UTC
Thank you very much! I just fixed the rewrite rule adding the
'noescape' or 'NE' option on the rewrite line, and now it works. 

So, in the end, it was "local misconfiguration", sorry again.

Hilko


Note You need to log in before you can comment on or make changes to this bug.


Navigation
Links