simplify path
[platal.git] / scripts / webredirect.php
CommitLineData
0337d704 1<?php
2/***************************************************************************
50a40a33 3 * Copyright (C) 2003-2006 Polytechnique.org *
0337d704 4 * http://opensource.polytechnique.org/ *
5 * *
6 * This program is free software; you can redistribute it and/or modify *
7 * it under the terms of the GNU General Public License as published by *
8 * the Free Software Foundation; either version 2 of the License, or *
9 * (at your option) any later version. *
10 * *
11 * This program is distributed in the hope that it will be useful, *
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
14 * GNU General Public License for more details. *
15 * *
16 * You should have received a copy of the GNU General Public License *
17 * along with this program; if not, write to the Free Software *
18 * Foundation, Inc., *
19 * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
20 ***************************************************************************/
21
22require("../include/xorg.inc.php");
23
24// on coupe la chaîne REQUEST_URI selon les / et on ne garde que
25// le premier non vide et éventuellement le second
26// la config d'apache impose la forme suivante pour REQUEST_URI :
27// REQUEST_URI = /prenom.nom(/path/fichier.hmtl)?
28list($username, $path) = preg_split('/\//', $_SERVER["REQUEST_URI"], 2, PREG_SPLIT_NO_EMPTY);
08cce2ff 29$res = XDB::query(
0337d704 30 "SELECT redirecturl
31 FROM auth_user_quick AS a
32 INNER JOIN aliases AS al ON (al.id = a.user_id AND (al.type='a_vie' OR al.type='alias'))
33 WHERE al.alias = {?}", $username);
34
35if ($url = $res->fetchOneCell()) {
36 $url = preg_replace('@/+$@', '', $url);
37 if($path) {
8b00e0e0 38 http_redirect("http://$url/$path");
0337d704 39 } else {
8b00e0e0 40 http_redirect("http://$url");
0337d704 41 }
42 exit();
43}
44
45// si on est ici, il y a eu un erreur ou on n'a pas trouvé le redirect
46header("HTTP/1.0 404 Not Found");
47
48?>
49
50<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
51<html><head>
52<title>404 Not Found</title>
53</head><body>
54<h1>Not Found</h1>
55The requested URL <?php echo $_SERVER['REQUEST_URI'] ?> was not found on this server.<p>
56<hr>
57<address>Apache Server at www.carva.org Port 80</address>
58</body></html>