Difference between revisions of "KB00004:Symfony2 Requirements"
(→Directory must be writable) |
|||
Line 16: | Line 16: | ||
<pre> | <pre> | ||
− | chown -R <webserver user from above command> <the directory which fails the check | + | chown -R <webserver user from above command> <the directory which fails the check> |
</pre> | </pre> | ||
Revision as of 11:09, 10 October 2015
PartKeepr uses Symfony2, a web framework. This page documents several issues why the Symfony2 Requirements check may fail.
Common Issues
Memory limit too small
The php.ini memory_limit directive must be set to 64MB or higher. Please adjust the variable in your php.ini file and restart your web server afterwards.
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.
GD library not found
You need to install and activate the GD Library for PHP. On Debian, you can install it using:
apt-get install php5-gd
No way to remotely load files detected
PartKeepr needs to be able to load data from the web, for example, to update the tips of the day database and to upload files by an URL.
Either set the directive allow_url_fopen to true in your php.ini file or install the cURL extension for PHP.
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.