Project

General

Profile

Anomalie #1350

La page de connexion httpS du wiki redirige vers http(pas-S)

Added by Sanete Reugardpa over 10 years ago. Updated about 3 years ago.

Status:
Fermé
Priority:
Élevée
Category:
Task
Target version:
Start date:
08/29/2013
Due date:
% Done:

0%

Estimated time:
Difficulté:
2 Facile

Description

Pour reproduire:
- Vider ses cookies
- Aller sur https://wiki.april.org/
- Cliquer sur "Créer un compte ou se connecter"
- Rentrer ses identifiants

Vérifier que le formulaire pointe sur HTTPS

- Cliquer sur "Connexion"

Noter qu'on se prend un 302 vers http://wiki.april.org/

History

#1

Updated by Anonymous over 10 years ago

Je souhaite ajouter que en https, un certain nombre d'éléments restent en http. Il serait amha utile soit de faire en sorte que le wiki soit sur ://wiki.april.org ou basculer totalement en https.

#2

Updated by Vincent-Xavier JUMEL over 9 years ago

  • Category set to Task
  • Target version set to Backlog
#3

Updated by François Poulain over 7 years ago

  • Description updated (diff)
  • Status changed from Nouveau to Confirmé

Oui c'est juste.

Les entêtes de la transaction :

POST:

Host: wiki.april.org
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Firefox/38.0 Iceweasel/38.5.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: fr-FR,fr;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Referer: https://wiki.april.org/index.php?title=Sp%C3%A9cial:Connexion&returnto=Accueil
Cookie: bling
Connection: keep-alive

Réponse :

Cache-Control: private, must-revalidate, max-age=0
Connection: keep-alive
Content-Length: 0
Content-Type: text/html; charset=utf-8
Date: Thu, 20 Oct 2016 12:27:57 GMT
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Location: http://wiki.april.org/w/Accueil
Server: nginx/1.6.2
Set-Cookie: blang
Vary: Accept-Encoding,Cookie
X_FORWARDED_PROTO: https
x-content-type-options: nosniff

Le "location" défini par médiawiki pousse vers http.

#4

Updated by François Poulain over 7 years ago

Bon,

A priori le soucis vient du fait que la liaison entre le nginx et le apache est en http.

Le code incriminé est ici (/var/lib/mediawiki/includes/OutputPage.php l. 2243) :

                        # Standards require redirect URLs to be absolute
                        $this->mRedirect = wfExpandUrl( $this->mRedirect, PROTO_CURRENT );

D'après includes/GlobalFunctions.php:

 * The meaning of the PROTO_* constants is as follows:
 * PROTO_HTTP: Output a URL starting with http://
 * PROTO_HTTPS: Output a URL starting with https://
 * PROTO_RELATIVE: Output a URL starting with // (protocol-relative URL)
 * PROTO_CURRENT: Output a URL starting with either http:// or https:// , depending
 *    on which protocol was used for the current incoming request

Je vois deux façon de résoudre ça :

  • causer https entre le nginx et le apache ;
  • patcher pour forcer le PROTO_HTTPS.

Je suis étonné qu'on n'ait pas ce même type d'ennui avec d'autres applications.

#5

Updated by François Poulain over 7 years ago

  • Status changed from Confirmé to En cours de traitement
#6

Updated by François Poulain over 7 years ago

D'ici le 17 janvier on saura peut être si on peut commenter la ligne de code, cette proposition autorisant les URL sans plan dans les entêtes Location : https://tools.ietf.org/html/draft-ietf-httpbis-p2-semantics-20#section-9.13

#7

Updated by François Poulain over 7 years ago

Ha beh en fait on peut déjà, d'après https://tools.ietf.org/html/rfc7231#section-7.1.2

Alors, une solution acceptable est de commenter la ligne qui force la définition d'une URL absolue.

#8

Updated by François Poulain about 7 years ago

  • Status changed from En cours de traitement to Fermé

En fait non. Mediawiki vérifie correctement la présence d'un x-forwarded-proto. Le soucis venait du reverse proxy qui ne transmettait pas cet entête. Cf bug #1840.

#9

Updated by Christian P. Momon about 3 years ago

  • Assignee set to François Poulain

Also available in: Atom PDF