From 3e7d509dd821ce22a00ba26c63536613da997b51 Mon Sep 17 00:00:00 2001 From: mistic100 Date: Sat, 19 May 2012 11:33:01 +0000 Subject: add migration task for create/modify htaccess containing rewrite rules on photos hotlinks git-svn-id: http://piwigo.org/svn/trunk@15124 68402e56-0260-453c-a942-63ccdbb3a9ee --- install/db/121-database.php | 92 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 install/db/121-database.php (limited to 'install/db') diff --git a/install/db/121-database.php b/install/db/121-database.php new file mode 100644 index 000000000..3d5192aba --- /dev/null +++ b/install/db/121-database.php @@ -0,0 +1,92 @@ +.htaccess file, a manual intervention is needed, click here for more information'; + +$htaccess = PHPWG_ROOT_PATH.'/.htaccess'; +$writable = true; +if (file_exists($htaccess)) +{ + if (!is_readable($htaccess) || !is_writable($htaccess)) + { + $writable = false; + } +} +else +{ + $writable = is_writable(PHPWG_ROOT_PATH); +} + +if (!$writable) +{ + array_push($page['warnings'], $warning_message); +} +else +{ + $content = file_exists($htaccess) ? file_get_contents($htaccess) : null; + if (strpos($content, 'RewriteEngine off') !== false) + { + array_push($page['warnings'], $warning_message); + } + else + { + if (strpos($content, 'RewriteEngine on') === false) + { + $content.=' +RewriteEngine on'; + } + + $content.= ' +## redirect <2.4 thumbnails hotlinks to i.php +RewriteRule ^upload/(.*)/'.preg_quote($conf['dir_thumbnail']).'/'.preg_quote($conf['prefix_thumbnail']).'(.*)\.([a-z0-9]{3,4})$ i.php?/upload/$1/$2-th.$3 [L] +RewriteRule ^galleries/(.*)/'.preg_quote($conf['dir_thumbnail']).'/'.preg_quote($conf['prefix_thumbnail']).'(.*)\.([a-z0-9]{3,4})$ i.php?/galleries/$1/$2-th.$3 [L] + +## redirect <2.4 high-def hotlinks to original file +RewriteRule ^upload/(.*)/pwg_high/(.*)\.([a-z0-9]{3,4})$ upload/$1/$2.$3 [L] +RewriteRule ^galleries/(.*)/pwg_high/(.*)\.([a-z0-9]{3,4})$ galleries/$1/$2.$3 [L] + +## redirect <2.4 low-def hotlinks to i.php +RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?'.preg_quote($_SERVER['SERVER_NAME']).'/.*$ [NC] +RewriteRule ^upload/(.*)/(.*)\.([a-z0-9]{3,4})$ i.php?/upload/$1/$2-me.$3 [L] +RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?'.preg_quote($_SERVER['SERVER_NAME']).'/.*$ [NC] +RewriteRule ^galleries(.*)/(.*)\.([a-z0-9]{3,4})$ i.php?/galleries/$1/$2-me.$3 [L]'; + + file_put_contents($htaccess, $content); + } +} + + +echo +"\n" +. $upgrade_description +."\n" +; +?> \ No newline at end of file -- cgit v1.2.3