add deployment instructions
[phancap.git] / www / get.php
index f78c3b5fef988653694e4c88d517d663f5e48b84..d4b70d3b3d593edf096f5e2beacdbdad768cead0 100644 (file)
@@ -46,16 +46,29 @@ try {
     exit(1);
 }
 
+if (strpos($_SERVER['HTTP_USER_AGENT'], ' cutycapt ') !== false) {
+    //phancap is trying to render a page with an image that
+    // is being fetched from phancap itself, leading to an
+    // infinite loop
+    header('HTTP/1.0 500 Infinite Loop');
+    header('Location: ' . $config->getCurrentUrlDir() . '/infinite.png');
+    exit(3);
+}
+
 $rep = new Repository();
 $rep->setConfig($config);
 try {
     $img = $rep->getImage($options);
     if ($config->redirect) {
         header('HTTP/1.0 302 Found');
+        header('phancap-file: ' . $img->name);
         header('Expires: ' . date('r', $img->getExpiryDate($options)));
         header('Location: ' . $img->getUrl());
     } else {
-        header('Content-type: ' . $img->getMimeType());
+        header('HTTP/1.0 200 OK');
+        header('phancap-file: ' . $img->name);
+        header('Content-Type: ' . $img->getMimeType());
+        header('Content-Length: ' . filesize($img->getPath()));
         readfile($img->getPath());
     }
 } catch (\Exception $e) {