le passage en php7 a été l’occasion de revoir l’installation de traq et à cette occasion je me suis aperçu de dysfonctionnement dans la partie administration. En fait ma règle de rewrite ne passait pas la Query string.
La solution est de mimer le [QSA] d’apache la règle ne s’invente pas …
$HTTP["host"] =~ "^(domain.tld)" {
url.rewrite-if-not-file = (
"/traq/([^?]*)(?:\?(.*))?" => "/traq/index.php/$1?$2",
),
} |
$HTTP["host"] =~ "^(domain.tld)" {
url.rewrite-if-not-file = (
"/traq/([^?]*)(?:\?(.*))?" => "/traq/index.php/$1?$2",
),
}
une petite modification est nécessaire aussi pour le bon fonctionnement en php7.0 et pour finir rajouter une méthode manquante dans traq/vendor/traq/controllers/app_controller.php à l’intérieur de la définition de la classe app_controller
/**
* Used to display the 404 page.
*/
public function show_404()
{
header("HTTP/1.0 404 Not Found");
$this->render['view'] = 'error/404';
$this->render['action'] = false;
} |
/**
* Used to display the 404 page.
*/
public function show_404()
{
header("HTTP/1.0 404 Not Found");
$this->render['view'] = 'error/404';
$this->render['action'] = false;
}