Difference between revisions of "KB00004:Symfony2 Requirements"

From PartKeepr Wiki
Jump to: navigation, search
(Created page with "PartKeepr uses [http://symfony.com/ Symfony2], a web framework. = Common Issues = == Directory must be writable == Various directories need to be writable by the web server....")
 
Line 1: Line 1:
PartKeepr uses [http://symfony.com/ Symfony2], a web framework.
+
PartKeepr uses [http://symfony.com/ Symfony2], a web framework. This page documents several issues why the Symfony2 Requirements check may fail.
  
 
= Common Issues =
 
= Common Issues =

Revision as of 20:28, 4 October 2015

PartKeepr uses Symfony2, a web framework. This page documents several issues why the Symfony2 Requirements check may fail.

Common Issues

Directory must be writable

Various directories need to be writable by the web server. The first step to fix this error is to find out as which user the Apache2 web server runs. Copy and paste the following line:

ps -ef | egrep "(httpd|apache2)" | grep -v `whoami` | grep -v root | head -n1 | cut -d" " -f1

Then, change to the directory where you installed PartKeepr and execute the following command:

chown -R <webserver user from above command> <the directory which fails the check

For example, if the web server user is www-data and the directory which fails the test is app/cache, you would invoke the command like this:

chown -R www-data app/cache

date.timezone setting must be set

On some distributions, the date.timezone setting is not configured. The installer gives you the path to the php.ini file used by the web server. Open the file in a text editor and find the text date.timezone. Remove the trailing ; character (which indicates a comment) and append your timezone, for example:

date.timezone=Europe/Berlin

If you are unsure which timezone you can use, you can execute the following command to get a list of all timezones:

php -r 'echo join(timezone_identifiers_list(), "\n");'

After you have saved the file, make sure you have restarted your web server so that the new setting takes effect.

Vendor libraries must be installed

If you are running PartKeepr from the source repository, you need to pull in the dependencies for PartKeepr. Ensure you have composer installed, then change to the directory in which you have installed PartKeepr and execute:

composer install

This will take several minutes, depending on your internet connection speed.

Less common issues

session_start() must be available

The session support seems to be disabled for your PHP installation. This could happen if you have compiled PHP yourself, or using a distribution like Gentoo where you have used the wrong USE flags. Refer to your distribution's manual to find out on how to enable session support.

ctype_alpha() must be available

The ctype support seems to be disabled for your PHP installation. This could happen if you have compiled PHP yourself, or using a distribution like Gentoo where you have used the wrong USE flags. Refer to your distribution's manual to find out on how to enable ctype support.

token_get_all() must be available

The tokenizer support seems to be disabled for your PHP installation. This could happen if you have compiled PHP yourself, or using a distribution like Gentoo where you have used the wrong USE flags. Refer to your distribution's manual to find out on how to enable tokenizer support.

simplexml_import_dom() must be available

The SimpleXML support seems to be disabled for your PHP installation. This could happen if you have compiled PHP yourself, or using a distribution like Gentoo where you have used the wrong USE flags. Refer to your distribution's manual to find out on how to enable SimpleXML support.

PCRE extension must be available

Either the PCRE extension is not available or it is too old. Usually this problem only occurs if you compiled PHP yourself, please see the documentation on the PCRE extension for further details.

Other issues

If there are other issues not covered here, please use the PartKeepr Community Support.