Skip to content
Snippets Groups Projects
Commit 1e0a2a93 authored by alvaro's avatar alvaro
Browse files

Possible to create pages for different http status (e.g., 404)

TODO: Apply Haanga to it
parent b3ac76ec
No related branches found
No related tags found
No related merge requests found
......@@ -3,37 +3,69 @@
class HTTPStatus{
public static function send303($uri, $ext){
global $conf;
$file = $conf['home'].$conf['httpStatus']['directory']."/303.template";
if(file_exists($file)){
$content = file_get_contents($file);
}else{
$content = $uri."\n\n";
}
header("HTTP/1.0 303 See Other");
header("Location: ".$uri);
header("Content-type: ".$ext);
echo $uri."\n\n";
echo $content;
exit(0);
}
public static function send401($msg){
public static function send401($uri){
global $conf;
$file = $conf['home'].$conf['httpStatus']['directory']."/401.template";
if(file_exists($file)){
$content = file_get_contents($file);
}else{
$content = $uri."\n\n";
}
header("HTTP/1.0 401 Forbidden");
echo $msg;
echo $content;
exit(0);
}
public static function send404($uri){
header("HTTP/1.0 404 Not Found");
echo "LODSPeaKr could not find ".$uri." or information about it.\nNo URIs in the triple store, or services configured with that URI\n";
global $conf;
$file = $conf['home'].$conf['httpStatus']['directory']."/404.template";
if(file_exists($file)){
$content = file_get_contents($file);
}else{
$content = "LODSPeaKr could not find ".$uri." or information about it.\nNo URIs in the triple store, or services configured with that URI\n";
}
header("HTTP/1.0 404 Not Found");
echo $content;
exit(0);
}
public static function send406($uri){
header("HTTP/1.0 406 Not Acceptable");
echo "LODSPeaKr can't find a representation suitable for the content type you accept\n\n";
global $conf;
$file = $conf['home'].$conf['httpStatus']['directory']."/406.template";
if(file_exists($file)){
$content = file_get_contents($file);
}else{
$content = "LODSPeaKr can't find a representation suitable for the content type you accept for $uri\n\n";
}
header("HTTP/1.0 406 Not Acceptable");
echo $content;
exit(0);
}
public static function send500($msg = null){
public static function send500($uri){
global $conf;
$file = $conf['home'].$conf['httpStatus']['directory']."/406.template";
if(file_exists($file)){
$content = file_get_contents($file);
}else{
$content = "An internal error ocurred. Please try later\n\n";
}
header("HTTP/1.0 500 Internal Server Error");
echo "An internal error ocurred. Please try later\n\n";
if($msg != null){
echo $msg;
}
echo $content;
exit(0);
}
}
......
......@@ -9,6 +9,7 @@ $conf['endpoint']['dbpedia'] = 'http://dbpedia.org/sparql';
$conf['endpoint']['logd'] = 'http://logd.tw.rpi.edu/sparql';
$conf['metadata']['db']['location'] = 'meta/db.sqlite';
$conf['httpStatus']['directory'] = 'components/status';
include_once('namespaces.php');
......@@ -33,10 +34,10 @@ $conf['http_accept']['json'] = array('application/json', 'application/x-javascri
$conf['http_accept']['nt'] = array('text/plain');
$conf['service']['prefix'] = 'services';
$conf['type']['prefix'] = 'types';
$conf['uri']['prefix'] = 'uris';
$conf['service']['prefix'] = 'services';
$conf['type']['prefix'] = 'types';
$conf['uri']['prefix'] = 'uris';
$conf['redirect']['prefix'] = 'redirect';
//Frontpage when user goes to http://example.org/
$conf['root'] = 'index.html';
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment