Difference between revisions of "Zend"
From OpenEMR Project Wiki
Bradymiller (talk | contribs) |
Bradymiller (talk | contribs) |
||
(15 intermediate revisions by the same user not shown) | |||
Line 2: | Line 2: | ||
:On 6/28/14, code requiring the Zend library was incorporated into the OpenEMR codebase. This was brought in by ZH Healthcare for a Module feature which is a large part of the [[OpenEMR_Certification_Stage_II_Meaningful_Use|Meaningful Use 2]] project. | :On 6/28/14, code requiring the Zend library was incorporated into the OpenEMR codebase. This was brought in by ZH Healthcare for a Module feature which is a large part of the [[OpenEMR_Certification_Stage_II_Meaningful_Use|Meaningful Use 2]] project. | ||
<br> | <br> | ||
== | == Codebase Import == | ||
On 6/28/14, imported the following commits (in chronologic order): | :On '''2/13/16''' (for OpenEMR version 4.3.1), upgraded the embedded Zend 2 library to version 2.4.9 (this was necessary to support PHP7): | ||
* [https://github.com/openemr/openemr/commit/212e69fc2d84f9ad905e87c58d328d0964e74a02 212e69] - Main Zend Module Commit. | :*https://github.com/openemr/openemr/commit/8b4faf94210dc68d562539a18fd0fda12080d0fb | ||
** WhyModulesInstaller.pdf - http://sourceforge.net/p/openemr/code-review/232/attachment/WhyModulesInstaller.pdf | :On '''6/28/14''', imported the following commits (in chronologic order): | ||
** ModuleInstaller-DeveloperGuide.pdf - http://sourceforge.net/p/openemr/code-review/232/attachment/ModuleInstaller-DeveloperGuide.pdf | :* [https://github.com/openemr/openemr/commit/212e69fc2d84f9ad905e87c58d328d0964e74a02 212e69] - Main Zend Module Commit. | ||
** Refer line no.26 in zend_modules/init_autoloader.php for setting up ZF2 Library Path Settings. | :** WhyModulesInstaller.pdf - http://sourceforge.net/p/openemr/code-review/232/attachment/WhyModulesInstaller.pdf | ||
* [https://github.com/openemr/openemr/commit/6e36d20be03bbeef7ba4f92387fd29a5be81b15f 6e36d2] - Removed a function in prior commit that is dangerous and not used. | :** ModuleInstaller-DeveloperGuide.pdf - http://sourceforge.net/p/openemr/code-review/232/attachment/ModuleInstaller-DeveloperGuide.pdf | ||
* [https://github.com/openemr/openemr/commit/4befb72b2a3832449dd4a5289e58e2e403367d43 4befb7] - Set correct permissions for application.config.php file | :** Refer line no.26 in zend_modules/init_autoloader.php for setting up ZF2 Library Path Settings. | ||
** Required changes in the installation script and ubuntu/debian scripts | :* [https://github.com/openemr/openemr/commit/6e36d20be03bbeef7ba4f92387fd29a5be81b15f 6e36d2] - Removed a function in prior commit that is dangerous and not used. | ||
* [https://github.com/openemr/openemr/commit/88be3cf83214eecd110ffe2d14b385d7d11e1373 88be3c] - Zend 2 library | :* [https://github.com/openemr/openemr/commit/4befb72b2a3832449dd4a5289e58e2e403367d43 4befb7] - Set correct permissions for application.config.php file | ||
** This is the actual Zend 2 library. This may be only temporary as developers learn to use this and if can figure out way for end users to install as an external dependency. | :** Required changes in the installation script and ubuntu/debian scripts | ||
:* [https://github.com/openemr/openemr/commit/88be3cf83214eecd110ffe2d14b385d7d11e1373 88be3c] - Zend 2 library | |||
:** This is the actual Zend 2 library(version 2.2.5). This may be only temporary as developers learn to use this and if can figure out way for end users to install as an external dependency. | |||
<br> | |||
== Configuring Zend == | |||
===PHP=== | |||
Need to use php version 5.3.3 or greater. | |||
:*(Note that if we upgrade Zend to 2.5.0 or greater in future(which is likely at some point), then will need php 5.5+) | |||
===Apache=== | |||
This section is to document best way to configure Zend with apache. It appears following two things need to be completed in apache for zend stuff to work: | |||
*enable "rewrite" mod in apache | |||
*allow "AllowOverride" in apache | |||
**There are some security considerations here(this allows use of .htaccess files). Ideally would have following set up: | |||
***Apache's main config file would turn this off. | |||
***Turn this on in OpenEMR directory | |||
***Turn this off in the OpenEMR directories that allow uploaded files (such as sites/default/documents) | |||
**Need to test above setup and if works, then need to place in the setup.php instructions and also set up for the ubuntu/mint/debian package. | |||
Above is discussed on the following threads: | |||
*[https://sourceforge.net/p/openemr/discussion/202506/thread/b515b5bd ubuntu setup discussed] | |||
*[https://sourceforge.net/p/openemr/discussion/202506/thread/58761dee windows setup discussed] | |||
<br> | <br> | ||
== TO DO == | == TO DO == | ||
* Document how to get Zend configured for all OS's | * Document how to get Zend configured for all OS's (see above "Configuring Zend" section for details). | ||
<br> | <br> | ||
== Related Forum Threads == | == Related Forum Threads == | ||
* [https://sourceforge.net/p/openemr/discussion/202506/thread/b515b5bd Zend Module Installer Main Thread] | * [https://sourceforge.net/p/openemr/discussion/202506/thread/b515b5bd Zend Module Installer Main Thread] |
Latest revision as of 08:10, 8 August 2016
Overview
- On 6/28/14, code requiring the Zend library was incorporated into the OpenEMR codebase. This was brought in by ZH Healthcare for a Module feature which is a large part of the Meaningful Use 2 project.
Codebase Import
- On 2/13/16 (for OpenEMR version 4.3.1), upgraded the embedded Zend 2 library to version 2.4.9 (this was necessary to support PHP7):
- On 6/28/14, imported the following commits (in chronologic order):
- 212e69 - Main Zend Module Commit.
- WhyModulesInstaller.pdf - http://sourceforge.net/p/openemr/code-review/232/attachment/WhyModulesInstaller.pdf
- ModuleInstaller-DeveloperGuide.pdf - http://sourceforge.net/p/openemr/code-review/232/attachment/ModuleInstaller-DeveloperGuide.pdf
- Refer line no.26 in zend_modules/init_autoloader.php for setting up ZF2 Library Path Settings.
- 6e36d2 - Removed a function in prior commit that is dangerous and not used.
- 4befb7 - Set correct permissions for application.config.php file
- Required changes in the installation script and ubuntu/debian scripts
- 88be3c - Zend 2 library
- This is the actual Zend 2 library(version 2.2.5). This may be only temporary as developers learn to use this and if can figure out way for end users to install as an external dependency.
- 212e69 - Main Zend Module Commit.
Configuring Zend
PHP
Need to use php version 5.3.3 or greater.
- (Note that if we upgrade Zend to 2.5.0 or greater in future(which is likely at some point), then will need php 5.5+)
Apache
This section is to document best way to configure Zend with apache. It appears following two things need to be completed in apache for zend stuff to work:
- enable "rewrite" mod in apache
- allow "AllowOverride" in apache
- There are some security considerations here(this allows use of .htaccess files). Ideally would have following set up:
- Apache's main config file would turn this off.
- Turn this on in OpenEMR directory
- Turn this off in the OpenEMR directories that allow uploaded files (such as sites/default/documents)
- Need to test above setup and if works, then need to place in the setup.php instructions and also set up for the ubuntu/mint/debian package.
- There are some security considerations here(this allows use of .htaccess files). Ideally would have following set up:
Above is discussed on the following threads:
TO DO
- Document how to get Zend configured for all OS's (see above "Configuring Zend" section for details).
Related Forum Threads