How to use PHP on FI
First, go to our directory
/home/xlogin/public_html create a file
.htaccess (must have "r" access enabled for others). Let's say that files with the .php extension are scripts and that they should be run as scripts:
DirectoryIndex index.php AddHandler cgi-script .php AddType application/x-httpd-php .php
In order to run the PHP script, it must have "x" access for the owner (PHP scripts run under your identity).
If you have the right to manage a site on Aise, which is located elsewhere
/home/xlogin/public_html/ , it is necessary for these PHP scripts to allow "x" access for users
apachefi , otherwise they will not work. To add this right, use the command
setfacl -m u:apachefi:x soubor.php
Furthermore, its very first line must be a string
#!/packages/run/php/bin/php . It is not necessary to insert this string into files that do not run directly, but for example they are just inserted with
An example of a PHP script
#!/packages/run/php/bin/php <html> <php echo strftime("%H:%M:%S\n"); ?> <html>
If you want to use FastCGI, edit in
DirectoryIndex index.php AddHandler fastcgi-script .php AddType application/x-httpd-php .php
FastCGI scripts are not newly launched at every request, but serve more. This can cause the application to respond more quickly, but on the other hand, not all applications are ready for this kind of use.
PHP language is constantly evolving and old versions are no longer supported, so once in a while we have to upgrade to a newer version, usually backwards incompatible. To make it easier for you to upgrade, the new version of PHP is available under the name
To test the new version, change the first line of your scripts to:
/packages/run/php/bin/php then switch to the new version so you can change it
php-next back to
It is currently
7.3 , while default
php is version
The default encoding is set to
UTF-8 that applications should use for both program code and eventual HTML files.
In special cases, you can set encoding in PHP (for example, to
ISO8829-2 ) by adding this command to the beginning of the program:
<?php ini_set('default_charset', 'ISO8859-2'); >
HTML files can be encoded in a file
For more information see Encoding Czech in Documents .
What to do in case of problems
Apache logs are a useful source of more detailed information about errors. They can be found on the Aisa server located in
/var/log/httpd/ , specifically
error.log , optionally
It is also preferable to use CGI instead of FastCGI when debugging errors. The error logs are then clearer and running the script over the web is more responsive.
The PHP script should also be directly executable on the command line. Example of correct output:
aisa:/home/xlogin/public_html>$ ./index.php X-Powered-By: PHP/5.6.38 Content-type: text/html; charset=UTF-8 <html> 10:04:01 <html>
Examples of possible errors in case of unsuccessful execution
-bash: ./index.php: Permission denied
The PHP script does not seem to have "x" access for the owner.
-bash: ./index.php: /packages/run/php/bin/php^M: bad interpreter: No such file or directory
PHP script has DOS line termination. It can be converted by a utility to Unix line termination
Premature end of script headers(in
Check the header
Content-typeyou are typing correctly and followed by a blank line.
Error log security
Error logs they are read-only accessible to the user
xlogin under which the script runs.
In addition, you can consider logging errors to your own file. This can be done by creating your own PHP configuration file
.user.ini that you place in the directory
public_html . This file should have at least the "r" access right for the owner and should contain a line
error_log = /home/xlogin/php.log
Subsequently, error messages should be recorded in the specified file. Of course, it is advisable to protect this file from other users. Therefore, we recommend that you create this file manually with the appropriate privileges, otherwise it will create read-only permissions for everyone when you write the first error. At least the right is necessary
w for the owner and file path should be accessible to you - logging again under your identity. Alternatively, if the directory in which you want to save this file is only accessible to you (right
x owner only), let the file be created automatically.