PHP: Difference between revisions
Line 9: | Line 9: | ||
apachectl graceful | apachectl graceful | ||
</syntaxhighlight> | </syntaxhighlight> | ||
To find the location for the command line interpreter, run: | To find the location for the command line interpreter, run: | ||
<syntaxhighlight lang='bash'> | <syntaxhighlight lang='bash'> | ||
php --ini | php --ini | ||
</syntaxhighlight> | </syntaxhighlight> | ||
To find the location for the web module, create a | To find the location for the web module, create a <code>phpinfo.php</code> file in the httpd server root, with the following content: | ||
<syntaxhighlight lang='php'> | <syntaxhighlight lang='php'> | ||
<?php | <?php | ||
phpinfo(); | phpinfo(); | ||
</syntaxhighlight> | </syntaxhighlight> | ||
and load it through the web server. | and load it through the web server. Usually, the location of the module is also configured in the httpd server configuration file <code>[[Httpd_Configuration|httpd.conf]]</code> as: | ||
<syntaxhighlight lang='xml'> | |||
LoadModule php_module /opt/brew/opt/php@8.1/lib/httpd/modules/libphp.so | |||
</syntaxhighlight> | |||
=Locate the <tt>php.ini</tt> File= | =Locate the <tt>php.ini</tt> File= |
Revision as of 18:32, 29 December 2023
Overview
Get Version
php -v
php.ini
php.ini
is the PHP configuration file. If PHP is used to render content for a httpd server, restart the server to reload the configuration without killing the server with:
apachectl graceful
To find the location for the command line interpreter, run:
php --ini
To find the location for the web module, create a phpinfo.php
file in the httpd server root, with the following content:
<?php
phpinfo();
and load it through the web server. Usually, the location of the module is also configured in the httpd server configuration file httpd.conf
as:
LoadModule php_module /opt/brew/opt/php@8.1/lib/httpd/modules/libphp.so
Locate the php.ini File
php -i | grep "Configuration File"
...
Configuration File (php.ini) Path => /etc
...
Installation
Linux
Generic
yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysql php-xml php-mbstring
Note
- The PHP installation command assumes we are going to use MySQL (or MariaDB). Update accordingly if using a different database.
Installing PHP 7.3 on Centos 7
If yum-config-manager is not installed, install it as shown here:
yum install epel-release
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum-config-manager --enable remi-php73
sudo yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysql php-xml php-mbstring
Mac
Latest:
brew install php
To install a specific version:
brew install php@7.4
The php.ini
and php-fpm.ini
files can be found in /opt/brew/etc/php/8.3/
.
Upgrade
Configuration
Error Reporting
Some PHP installations come with error reporting set to dump all errors, including some not appropriate for production, like deprecation messages.
To set error reporting to a production settings, configure the following in the php.ini
file:
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT