MedDream for FileSystem Quick Install (IIS and Apache) GENERAL NOTES: WARNING: support for this configuration was last tested with MedDream 4.03. Starting from 4.04, there are no pre-release tests with $dbms = "FileSystem". Please contact info@softneta.com if you would like to use this integration mode. This MedDream mode allows to view single DICOM files by their relative paths. Absolute paths are not allowed due to security concerns; it is also not recommended to specify a drive root as common to all paths. The simplest form of HIS integration results in paths visible for everyone, hence integration via POST requests is advised. Since version 3.14.1207.3003, a directory can be specified, too. All DICOM files there should have the same Study UID. Contents of the directory (excluding any subdirectories) are sorted by name in ascending order and then parsed. The Study UID in the first file is treated as a reference, remaining files with different UIDs are ignored. Consequently, if the directory contains multiple studies, the outcome depends solely on file names and their collation according to the system-default locale. "Save Images..." supports single image only (not entire series). The user interface so far won't warn about it, you'll simply get images.zip which is a text file this time and contains an error message. Under Windows, a thread-safe (TS) 32-bit PHP build is required. The DLLs included won't work with a 64-bit PHP, like in 64-bit builds of WampServer. Under Linux, a non-TS PHP build is required. This is related to a more common build of Apache, the "prefork". The "worker" build is incompatible. During an upgrade it's recommended to use the included config.sample-filesystem.php as a template and then update the resulting config.php according to the old one. This will prevent misunderstandings like variable names which were suddenly changed. While still in demo mode, you *must* remove the existing meddream.lic after changing computer's host name (any OS), reinstalling the OS (Windows) or changing the MAC of any network card (Linux). A correct file will be created automatically. Otherwise a commercial license generated from your meddream.lic will not work. This also means that Windows must be activated in advance! WINDOWS (IIS/PHP) INSTALL: Note: it is assumed that PHP is already installed and working. Installation of PHP under IIS is outside the scope of this short memo. Note: PHP should be installed as ISAPI module. CGI/FastCGI has problems for which we don't have a solution so far. Consequently, you must use PHP 5.2 with IIS, as ISAPI support was removed in PHP 5.3. 1. Copy meddream folder to IIS_WWW_ROOT (so that the result is IIS_WWW_ROOT/meddream; for example, in our machines it usually is C:\Inetpub\wwwroot\meddream.) Adjust permissions: the directories "meddream", "meddream\temp", "meddream\log" must be writeable by IIS (accounts IUSR_, IWAM_) If you are updating an older version of MedDream: a) Please back up the old version (so you can go back any time). b) Please do not replace files you changed in last version. You must carefully synchronize the new version 2. From IIS_WWW_ROOT\meddream copy php5.2_meddream.dll to PHP_INSTALL_DIR\ext copy external.sample-ehc-filesystem.php to external.php 3. Add to php.ini file "extension=php5.2_meddream.dll" 4. Specify date.timezone in php.ini: [Date] ; Defines the default timezone used by the date functions date.timezone = "America/Chicago" (the list of possible values is at http://www.php.net/manual/en/timezones.php) 5. Edit IIS_WWW_ROOT/meddream/config.php file. Use config.sample-filesystem.php as a template. The file contains basic instructions. You *must* specify $archive_dir_prefix -- a directory common to all allowed paths. 6. Restart the World Wide Web Publishing service 7. Test the functionality by browsing to http://127.0.0.1/meddream/?file=PATH_TO_YOUR_FILE Example: The directory C:\PACS\dcm4chee\server\default\archive contains DCM4CHEE archive tree, with deeper levels named like year\month\day\hour\... This directory is specified by $archive_dir_prefix. Then PATH_TO_YOUR_FILE could be "2012\2\4\0\43D7AA94\2569DF62\9242C40A" or, in JavaScript code, '2012\\2\\4\\0\\43D7AA94\\2569DF62\\9242C40A'. WINDOWS (APACHE/PHP) INSTALL: 1. Copy meddream folder to APACHE_HTDOCS_DIR (so that the result is APACHE_HTDOCS_DIR/meddream; for example, in our machines it usually is C:\xampplite\htdocs\meddream.) If you are updating an older version of MedDream: a) Please back up the old version (so you can go back any time). b) Please do not replace files you changed in last version. You must carefully synchronize the new version 2. From APACHE_HTDOCS_DIR\meddream copy php5.2_meddream.dll to PHP_INSTALL_DIR\ext (if you are using PHP 5.2.x) copy php5.3_meddream-VC6.dll to PHP_INSTALL_DIR\ext (if you are using PHP 5.3.x, VC6 build) copy php5.3_meddream-VC9.dll to PHP_INSTALL_DIR\ext (if you are using PHP 5.3.x, VC9 build) copy php5.4_meddream.dll to PHP_INSTALL_DIR\ext (if you are using PHP 5.4.x) copy php5.5_meddream.dll to PHP_INSTALL_DIR\ext (if you are using PHP 5.5.x) copy external.sample-ehc-filesystem.php to external.php 3. Add to php.ini file "extension=php5.2_meddream.dll" (if you are using PHP 5.2.x) "extension=php5.3_meddream-VC6.dll" (if you are using PHP 5.3.x, VC6 build) "extension=php5.3_meddream-VC9.dll" (if you are using PHP 5.3.x, VC9 build) "extension=php5.4_meddream.dll" (if you are using PHP 5.4.x) "extension=php5.5_meddream.dll" (if you are using PHP 5.5.x) 4. Specify date.timezone in php.ini: [Date] ; Defines the default timezone used by the date functions date.timezone = "America/Chicago" (the list of possible values is at http://www.php.net/manual/en/timezones.php) 5. Edit APACHE_HTDOCS_DIR/meddream/config.php file. Use config.sample-filesystem.php as a template. The file contains basic instructions. You *must* specify $archive_dir_prefix -- a directory common to all allowed paths. 6. Restart Apache 7. Test the functionality by browsing to http://127.0.0.1/meddream/?file=PATH_TO_YOUR_FILE Example: The directory C:\PACS\dcm4chee\server\default\archive contains DCM4CHEE archive tree, with deeper levels named like year\month\day\hour\... This directory is specified by $archive_dir_prefix. Then PATH_TO_YOUR_FILE could be "2012\2\4\0\43D7AA94\2569DF62\9242C40A" or, in JavaScript code, '2012\\2\\4\\0\\43D7AA94\\2569DF62\\9242C40A'.