Warning: MacOSX Installation in ProcessMaker has been included under an experimental section, since this installation has not being tested by QA Department yet, so this is not officially supported by ProcessMaker.

General Information

Tested over Mac OSX Lion 10.6

Requirements

Web stack XAMPP, you can download this from  this page.

Warning: ProcessMaker is not compatible with MySQL STRICT mode which is turned on by default in MySQL 5.7. See the Turning off MySQL STRICT Mode section to disable it.

Installing MacOSX

Download XAMPP and install it using the configuration by default; then, move XAMPP folder to Applications folder, the installer will help with moving it.

With Finder application enter into folder Applications > XAMPP and execute application XAMPP Control in order to arrange Apache and MySQL.

to test it copy this url: http://localhost in you browser.

Download ProcessMaker and unpack in the folder

/Applications/XAMPP/htdocs

Setting file permissions

Then, issue the following commands as the "root" user so that ProcessMaker can access the necessary files when run by the Apache server:

cd /Applications/XAMPP/htdocs/processmaker/
chmod -R 770 shared/
cd /Applications/XAMPP/htdocs/processmaker/workflow/engine/
chmod -R 770 /Applications/XAMPP/htdocs/processmaker/workflow/public_html
chmod -R 770 config content/languages plugins xmlform js/labels
chown –R <apache_user>:<apache_group> /Applications/XAMPP/htdocs/processmaker

you can verify or change the Apache user and group at

/Applications/XAMPP/etc/httpd.conf

Configuring apache

Edit the xampp virtual hosts configuration, httpd-vhosts.conf file located at

/Applications/XAMPP/etc/extra/httpd-vhosts.conf

Edit as follows:

ServerAdmin webmaster@localhost
DocumentRoot "/Applications/XAMPP/xamppfiles/htdocs"
ServerName localhost
ServerAlias localhost
ErrorLog "logs/localhost-error_log"
CustomLog "logs/localhost-access_log" common
 
NameVirtualHost 127.0.0.1:8080  
#processmaker virtual host  
<virtualhost>    
  ServerName "*"    
  DocumentRoot /Applications/XAMPP/htdocs/processmaker/workflow/public_html    
  DirectoryIndex index.html index.php    
  <directory>        
    AddDefaultCharset UTF-8        
    AllowOverRide All    
    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>

Add the port number on httpd.conf file located at:

/Applications/XAMPP/etc/httpd.conf

Add Line:

Listen 8080

Now include the virtual hosts created in the httpd-vhosts.conf file. Go to:

/Applications/XAMPP/etc/httpd.conf

Delete the Hash(pound) # from the line:

#Include /Applications/XAMPP/etc/extra/httpd-vhosts.conf

And leave as follows:

# Virtual Hosts
Include /Applications/XAMPP/etc/extra/httpd-vhosts.conf

Known Issues

If you experiment some problems like 404 error, it is generally related to permissions. Check the folders permissions and try again.