ProcessMaker Generic Installation
From ProcessMaker
Contents |
Requirements
Server:
- Apache 2.2.3 or greater with the following modules:
- Deflate
- Expires
- Rewrite
- Vhost_alias
- MySQL 4.1.20 or greater
(If using the Pentaho Reports plugin, MySQL 5.1.41 or greater is required.)
- PHP 5.1.6 or greater (but not PHP 5.3.X)
Clients:
- Mozilla Firefox (recommended) or Internet Explorer 7 or greater
PHP Settings
Each ProcessMaker session needs a minimum of 80MB RAM to run. Go to PHP's configuration file php.ini and set the memory_limit to 80M or greater:
memory_limit = 80M
In order to upload Input Documents, upgrade ProcessMaker and add plugins and languages, file_uploads need to be enabled:
file_uploads = On
If planning on uploading large Input Documents while running processes, the post_max_size and upload_max_filesize should be increased to more than the default 2MB. For instance, if planning on uploading files as large as 16MB, then:
post_max_size = 16M upload_max_filesize = 16M
If using ProcessMaker version 1.2-2552 or previous, turn on ASP tags and short tags:
asp_tags = On short_open_tag = On
If using a version of ProcessMaker before 1.0-1286, turn off magic quotes:
magic_quotes_gpc = Off
Make sure that the following modules are loaded in PHP: mbstring, gd, soap, curl, ldap, xml, mysql
The modules can be verified by issuing the following command from the command line:
php -m
or with the function phpinfo() in a web page.
After changing the PHP configuration, restart the Apache service.
Installation
In order to begin, it is necessary to install the following PHP modules: php-gd, php-mysql, php-xml, php-soap, php-mbstring, php-mcrypt, php-curl, php-ldap
Download the latest ProcessMaker tarball from http://sourceforge.net/projects/processmaker/files
The files are in .tar.gz format and can be extracted using most compression tools, like the command tar in Linux or the Winrar Programm in Windows. Due to security reasons, it is highly recommended to install ProcessMaker under the /opt/ directory. Thereby extract the pmos-X.X-XXXX.tar.gz file under the directory /opt/
Linux/UNIX: tar -xvzf pmos-X.X-XXXX.tar.gz /opt/
MS WINDOWS: Use Winrar or 7-Zip to extract the file pmos-X.X-XXXX.tar.gz in c:\opt\
This will create a new directory "processmaker/" containing all ProcessMaker files and directories.
To use the development version of ProcessMaker (which isn't recommended unless it contains some needed feature), download the source code from the ProcessMaker Subversion repository. In Linux/UNIX:
svn co svn://source.colosa.net/newgulliver/trunk
In Windows, use TortoiseSVN to download the source code from svn://source.colosa.net/newgulliver/trunk
Make sure that the following subdirectories are world writable:
LINUX cd /opt/processmaker mkdir compiled shared (if these directories don't already exist) chmod 777 compiled shared cd /opt/processmaker/workflow/engine/ chmod 777 config content/languages plugins xmlform js/labels
WINDOWS Right click on the following folders, choose option: "Properties", on the window "Properties" uncheck the option "Readonly" C:\ C:\opt\processmaker\workflow\engine\config\ C:\opt\processmaker\workflow\engine\content\languages\ C:\opt\processmaker\workflow\engine\js\labels\ C:\opt\processmaker\workflow\engine\plugins\ C:\opt\processmaker\workflow\engine\xmlform\
Apache Configuration
Define a Virtual Host in Apache for ProcessMaker. To do that, create a new file pmos.conf with the following definition:
# Please change the ip address with your server ip address and
# the ServerName with you own subdomains.
NameVirtualHost your_ip_address
#processmaker virtual host
<VirtualHost your_ip_address >
ServerName "your_processmaker_domain"
DocumentRoot your_processmaker_directory
DirectoryIndex index.html index.php
<Directory "your_processmaker_directory">
AddDefaultCharset UTF-8
AllowOverRide none
Options FollowSymlinks
Order allow,deny
Allow from all
RewriteEngine on
RewriteRule ^.*/(.*)$ sysGeneric.php [NC,L]
# ExpiresActive On
# ExpiresDefault "access plus 1 day"
# ExpiresByType image/gif "access plus 1 day"
# ExpiresByType image/png "access plus 1 day"
# ExpiresByType image/jpg "access plus 1 day"
# ExpiresByType text/css "access plus 1 day"
# ExpiresByType text/javascript "access plus 1 day"
# AddOutputFilterByType DEFLATE text/html
</Directory>
</VirtualHost>
WHERE:
- your_ip_address: IP Addresses of the Server/Computer where ProcessMaker is installed.
- your_processmaker_domain: Domain for ProcessMaker defined in your DNS or your hosts file. If you don't have a domain, use the same IP Address as was used before for "your_ip_address".
- your_processmaker_directory: Where the /public_html directory is found in your installation of ProcessMaker:
- Linux/UNIX:
- /opt/processmaker/workflow/public_html
- Windows:
- C:\opt\processmaker\workflow\public_html
Save the pmos.conf file in the following directory, where it will automatically be loaded by the Apache web server:
- Generic Linux/UNIX:
- /etc/httpd/conf.d/pmos.conf
- Debian/Ubuntu:
- /etc/apache2/sites-available/
- Then issue the command: a2ensite pmos.conf
- WINDOWS:
- C:\wamp\bin\apache\apache2.2.8\conf\extra\pmos.conf
If using Windows, add the following line to the httpd.conf file, so that the ProcessMaker virtual configuration can proceed:
Include "C:\wamp\bin\apache\apache2.2.8\conf\extra\pmos.conf"
Note: It is also possible to define the virtual host for ProcessMaker directly in the htttp.conf file. That can be done by adding the above exposed virtual server definition.
Note: If Apache is using the default port 80, then configure Skype and other programs to not use port 80. You can check whether a program is currently listening on port 80 with netstat -anb in Windows or netstat -tanp in Linux/UNIX.
To configure Skype to stop listening on port 80, go to Tools > Options. Under the Advanced section of the "Options" dialog box, select the Connection tab. Deselect the option Use port 80 and 443 as alternatives for incoming connections.
Set Default Timezone
Open the file /opt/processmaker/workflow/engine/config/defines.php with your preferred text editor.
- Search for the line that defines the TIME_ZONE constant (define('TIME_ZONE', ...))
- Replace the default value (America/La_Paz) with the one you like.
- A list of available timezones can be found here: (http://php.net/manual/en/timezones.php).
///************TimeZone Set***************//
if(!defined('TIME_ZONE')) {
define('TIME_ZONE', 'Europe/Vienna');
}
if (function_exists('date_default_timezone_set')) {
date_default_timezone_set(TIME_ZONE);
}
ProcessMaker Configuration
Open your browser and load the ProcessMaker site (in our virtual server example this means http://your-processmaker-server). You should see the test page. If you don't see it, please check the installation steps.
On the test page:
- Enter your MySQL database account information, which should have privileges to create databases and users.
- Test your connection and paths, by clicking the Test option upper right-hand corner.
After that, click on the tab "Install" (in the upper right-hand corner).
After few seconds you will get the confirmation of your installation. If it was successful, click on the button "Finish installation" and enjoy ProcessMaker. Otherwise, please visit our forums (http://forum.processmaker.com/) to get support.
To login to ProcessMaker use these credentials:
user: admin password: admin workspace: workflow
