Difference between revisions of "Phpinfo page"
(6 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | * Using the text editor of your choice(I prefer vi/vim, but newbies like pico), create a new file named phpinfo.php, or anything you want, as long as it ends with the .php filename extension, in the root directory of your web server. On Linux, that us usually /var/www/html. Within that file, enter these three lines of text: | + | == '''PHP - Website scripting language used to create dynamic websites''' == |
+ | |||
+ | === '''Custom PHP Distributions - 3rd Party''' === | ||
+ | There are a number of custom PHP distributions out there, usually created for specific use-cases. Others are great when you need a newer version of PHP that what is naitively available for your current version of your Linux distribution. | ||
+ | |||
+ | For instance, the new website app you want to use on your website requires PHP 8.2, but your version of Linux only has PHP 7.4 available through it's normal package repository. There are third-party custom PHP distributions created by these developers that allow you to install the newer version of PHP and it's supported accessories and tools. | ||
+ | <br /><br /> | ||
+ | |||
+ | === '''Upgrading Third-Party Custom PHP Distribution Repository Configurations''' === | ||
+ | As new software packages and tools become available, so do thier PHP requirements. What once needed PHP 7.4 to run properly now needs PHP version 8.2 to run the new version of the package required. In order to do this properly and keep the system "clean", configured "correctly", you should follow the "standard process" for the particulare package you are dealing with, as all are different, depending on what you are wanting to do in the end. | ||
+ | |||
+ | ==== '''PHP Upgrade - Real-World Urgent Upgrade Required!''' ==== | ||
+ | I currently encounreded a real-world urgent upgrade requirement for the currently installed version of PHP on my Fedora 36 workstation laptop with this exact same scenario. I had installed the YUM/DNF PHP repository configuration files for the 3rd-party "Remi php 7.4" packages long ago, when it was the newest available version, and Fedora 36 didn't support any PHP higher than 5.x at the time. Long since then, I have begun to get warning messages on that laptop aobut the outdated and extremely "vulnerable" PHP version 7.4 installed, and that I should upgrade immediatelly. | ||
+ | <br /><br /> | ||
+ | |||
+ | I had to figure out how to upgrade the Remi repository configuration files to support the latest version of PHP currently available through Remi, and went through this process: | ||
+ | |||
+ | <pre style="color:blue"> | ||
+ | [root@fc36.dawgland.com:~]# dnf module reset php | ||
+ | Fedora 36 - x86_64 - Updates 8.5 kB/s | 4.5 kB 00:00 | ||
+ | Fedora Modular 36 - x86_64 - Updates 7.4 kB/s | 2.3 kB 00:00 | ||
+ | Dependencies resolved. | ||
+ | ================================================================================ | ||
+ | Package Architecture Version Repository Size | ||
+ | ================================================================================ | ||
+ | Resetting modules: | ||
+ | php | ||
+ | |||
+ | Transaction Summary | ||
+ | ================================================================================ | ||
+ | |||
+ | Is this ok [y/N]: y | ||
+ | Complete! | ||
+ | </pre> | ||
+ | <br /><br /> | ||
+ | |||
+ | Next, you need to enable the desired release you want/need to use. In my case, I want to use/enable the latest/greatest, PHP version 8.2, so ran this command next: | ||
+ | <pre style="color:blue"> | ||
+ | [root@fc36.dawgland.com:~]# dnf module enable php:remi-8.2 | ||
+ | Last metadata expiration check: 0:06:35 ago on Wed 01 Nov 2023 08:32:58 PM PDT. | ||
+ | Dependencies resolved. | ||
+ | ================================================================================ | ||
+ | Package Architecture Version Repository Size | ||
+ | ================================================================================ | ||
+ | Enabling module streams: | ||
+ | php remi-8.2 | ||
+ | |||
+ | Transaction Summary | ||
+ | ================================================================================ | ||
+ | |||
+ | Is this ok [y/N]: y | ||
+ | Complete! | ||
+ | </pre> | ||
+ | |||
+ | <br /><br /> | ||
+ | |||
+ | Then, to implement and install/upgrade all of the PHP packages to release/version 8.2, run this command, again, as the "root", aka, superuser: | ||
+ | <br /> | ||
+ | <pre style="color:blue"> | ||
+ | [root@fc36.dawgland.com:~]# dnf update php\* | ||
+ | Last metadata expiration check: 0:06:55 ago on Tue 31 Oct 2023 11:30:11 AM PDT. | ||
+ | Dependencies resolved. | ||
+ | ================================================================================ | ||
+ | Package Arch Version Repository Size | ||
+ | ================================================================================ | ||
+ | Installing: | ||
+ | php-pecl-xmlrpc x86_64 1.0.0~rc3-2.fc36.remi.8.2 remi-modular 65 k | ||
+ | replacing php-xmlrpc.x86_64 7.4.33-8.fc36.remi | ||
+ | Upgrading: | ||
+ | php-bcmath x86_64 8.2.9-2.fc36.remi remi-modular 47 k | ||
+ | php-cli x86_64 8.2.9-2.fc36.remi remi-modular 5.4 M | ||
+ | php-common x86_64 8.2.9-2.fc36.remi remi-modular 842 k | ||
+ | replacing php-json.x86_64 7.4.33-8.fc36.remi | ||
+ | php-dba x86_64 8.2.9-2.fc36.remi remi-modular 51 k | ||
+ | php-fpm x86_64 8.2.9-2.fc36.remi remi-modular 1.9 M | ||
+ | php-gd x86_64 8.2.9-2.fc36.remi remi-modular 62 k | ||
+ | php-geos x86_64 1.0.0-24.fc36.remi.8.2 remi-modular 60 k | ||
+ | php-gmp x86_64 8.2.9-2.fc36.remi remi-modular 49 k | ||
+ | php-imap x86_64 8.2.9-2.fc36.remi remi-modular 69 k | ||
+ | php-intl x86_64 8.2.9-2.fc36.remi remi-modular 233 k | ||
+ | php-ldap x86_64 8.2.9-2.fc36.remi remi-modular 64 k | ||
+ | php-lz4 x86_64 0.4.3-1.fc36.remi.8.2 remi-modular 18 k | ||
+ | php-mbstring x86_64 8.2.9-2.fc36.remi remi-modular 577 k | ||
+ | php-mysqlnd x86_64 8.2.9-2.fc36.remi remi-modular 216 k | ||
+ | php-odbc x86_64 8.2.9-2.fc36.remi remi-modular 65 k | ||
+ | php-opcache x86_64 8.2.9-2.fc36.remi remi-modular 610 k | ||
+ | php-pdo x86_64 8.2.9-2.fc36.remi remi-modular 118 k | ||
+ | php-pecl-geoip x86_64 1.1.1-16.fc36.remi.8.2 remi-modular 28 k | ||
+ | php-pecl-gnupg x86_64 1.5.1-1.fc36.remi.8.2 remi-modular 36 k | ||
+ | php-pecl-imagick-im7 x86_64 3.7.0-7.fc36.remi.8.2 remi-modular 203 k | ||
+ | php-pecl-json-post x86_64 1.1.0-1.fc36.remi.8.2 remi-modular 22 k | ||
+ | php-pecl-krb5 x86_64 1.1.5-1.fc36.remi.8.2 remi-modular 64 k | ||
+ | php-pecl-mcrypt x86_64 1.0.6-1.fc36.remi.8.2 remi-modular 35 k | ||
+ | php-pecl-oauth x86_64 2.0.7-6.fc36.remi.8.2 remi-modular 100 k | ||
+ | php-pecl-rrd x86_64 2.0.3-2.fc36.remi.8.2 remi-modular 29 k | ||
+ | php-process x86_64 8.2.9-2.fc36.remi remi-modular 65 k | ||
+ | php-pspell x86_64 8.2.9-2.fc36.remi remi-modular 27 k | ||
+ | php-snmp x86_64 8.2.9-2.fc36.remi remi-modular 47 k | ||
+ | php-soap x86_64 8.2.9-2.fc36.remi remi-modular 202 k | ||
+ | php-sodium x86_64 8.2.9-2.fc36.remi remi-modular 62 k | ||
+ | php-xml x86_64 8.2.9-2.fc36.remi remi-modular 215 k | ||
+ | php-xz x86_64 1.1.2-2.fc36.remi.8.2 remi-modular 21 k | ||
+ | Installing dependencies: | ||
+ | qdbm x86_64 1.8.78-50.fc36 fedora 279 k | ||
+ | |||
+ | Transaction Summary | ||
+ | ================================================================================ | ||
+ | Install 2 Packages | ||
+ | Upgrade 32 Packages | ||
+ | |||
+ | Total download size: 12 M | ||
+ | Is this ok [y/N]: y | ||
+ | Downloading Packages: | ||
+ | (1/34): php-bcmath-8.2.9-2.fc36.remi.x86_64.rpm 28 kB/s | 47 kB 00:01 | ||
+ | (2/34): php-pecl-xmlrpc-1.0.0~rc3-2.fc36.remi.8 35 kB/s | 65 kB 00:01 | ||
+ | (3/34): php-common-8.2.9-2.fc36.remi.x86_64.rpm 584 kB/s | 842 kB 00:01 | ||
+ | (4/34): php-dba-8.2.9-2.fc36.remi.x86_64.rpm 228 kB/s | 51 kB 00:00 | ||
+ | (5/34): qdbm-1.8.78-50.fc36.x86_64.rpm 51 kB/s | 279 kB 00:05 | ||
+ | (6/34): php-fpm-8.2.9-2.fc36.remi.x86_64.rpm 759 kB/s | 1.9 MB 00:02 | ||
+ | (7/34): php-gd-8.2.9-2.fc36.remi.x86_64.rpm 89 kB/s | 62 kB 00:00 | ||
+ | (8/34): php-gmp-8.2.9-2.fc36.remi.x86_64.rpm 220 kB/s | 49 kB 00:00 | ||
+ | (9/34): php-geos-1.0.0-24.fc36.remi.8.2.x86_64. 111 kB/s | 60 kB 00:00 | ||
+ | (10/34): php-imap-8.2.9-2.fc36.remi.x86_64.rpm 283 kB/s | 69 kB 00:00 | ||
+ | (11/34): php-intl-8.2.9-2.fc36.remi.x86_64.rpm 445 kB/s | 233 kB 00:00 | ||
+ | (12/34): php-ldap-8.2.9-2.fc36.remi.x86_64.rpm 105 kB/s | 64 kB 00:00 | ||
+ | (13/34): php-lz4-0.4.3-1.fc36.remi.8.2.x86_64.r 85 kB/s | 18 kB 00:00 | ||
+ | (14/34): php-mysqlnd-8.2.9-2.fc36.remi.x86_64.r 343 kB/s | 216 kB 00:00 | ||
+ | (15/34): php-mbstring-8.2.9-2.fc36.remi.x86_64. 530 kB/s | 577 kB 00:01 | ||
+ | (16/34): php-odbc-8.2.9-2.fc36.remi.x86_64.rpm 136 kB/s | 65 kB 00:00 | ||
+ | (17/34): php-cli-8.2.9-2.fc36.remi.x86_64.rpm 773 kB/s | 5.4 MB 00:07 | ||
+ | (18/34): php-pdo-8.2.9-2.fc36.remi.x86_64.rpm 293 kB/s | 118 kB 00:00 | ||
+ | (19/34): php-pecl-geoip-1.1.1-16.fc36.remi.8.2. 113 kB/s | 28 kB 00:00 | ||
+ | (20/34): php-pecl-gnupg-1.5.1-1.fc36.remi.8.2.x 76 kB/s | 36 kB 00:00 | ||
+ | (21/34): php-pecl-imagick-im7-3.7.0-7.fc36.remi 518 kB/s | 203 kB 00:00 | ||
+ | (22/34): php-pecl-json-post-1.1.0-1.fc36.remi.8 101 kB/s | 22 kB 00:00 | ||
+ | (23/34): php-opcache-8.2.9-2.fc36.remi.x86_64.r 490 kB/s | 610 kB 00:01 | ||
+ | (24/34): php-pecl-krb5-1.1.5-1.fc36.remi.8.2.x8 140 kB/s | 64 kB 00:00 | ||
+ | (25/34): php-pecl-mcrypt-1.0.6-1.fc36.remi.8.2. 76 kB/s | 35 kB 00:00 | ||
+ | (26/34): php-pecl-rrd-2.0.3-2.fc36.remi.8.2.x86 127 kB/s | 29 kB 00:00 | ||
+ | (27/34): php-pecl-oauth-2.0.7-6.fc36.remi.8.2.x 169 kB/s | 100 kB 00:00 | ||
+ | (28/34): php-pspell-8.2.9-2.fc36.remi.x86_64.rp 120 kB/s | 27 kB 00:00 | ||
+ | (29/34): php-snmp-8.2.9-2.fc36.remi.x86_64.rpm 209 kB/s | 47 kB 00:00 | ||
+ | (30/34): php-process-8.2.9-2.fc36.remi.x86_64.r 145 kB/s | 65 kB 00:00 | ||
+ | (31/34): php-sodium-8.2.9-2.fc36.remi.x86_64.rp 271 kB/s | 62 kB 00:00 | ||
+ | (32/34): php-soap-8.2.9-2.fc36.remi.x86_64.rpm 524 kB/s | 202 kB 00:00 | ||
+ | (33/34): php-xz-1.1.2-2.fc36.remi.8.2.x86_64.rp 91 kB/s | 21 kB 00:00 | ||
+ | (34/34): php-xml-8.2.9-2.fc36.remi.x86_64.rpm 401 kB/s | 215 kB 00:00 | ||
+ | -------------------------------------------------------------------------------- | ||
+ | Total 1.0 MB/s | 12 MB 00:11 | ||
+ | Running transaction check | ||
+ | Transaction check succeeded. | ||
+ | Running transaction test | ||
+ | Transaction test succeeded. | ||
+ | Running transaction | ||
+ | Preparing : 1/1 | ||
+ | Running scriptlet: php-common-8.2.9-2.fc36.remi.x86_64 1/1 | ||
+ | Running scriptlet: php-common-8.2.9-2.fc36.remi.x86_64 1/68 | ||
+ | Upgrading : php-common-8.2.9-2.fc36.remi.x86_64 1/68 | ||
+ | Upgrading : php-pdo-8.2.9-2.fc36.remi.x86_64 2/68 | ||
+ | Upgrading : php-xml-8.2.9-2.fc36.remi.x86_64 3/68 | ||
+ | Installing : qdbm-1.8.78-50.fc36.x86_64 4/68 | ||
+ | Upgrading : php-dba-8.2.9-2.fc36.remi.x86_64 5/68 | ||
+ | Installing : php-pecl-xmlrpc-1.0.0~rc3-2.fc36.remi.8.2.x86_64 6/68 | ||
+ | Upgrading : php-mysqlnd-8.2.9-2.fc36.remi.x86_64 7/68 | ||
+ | Upgrading : php-odbc-8.2.9-2.fc36.remi.x86_64 8/68 | ||
+ | Upgrading : php-bcmath-8.2.9-2.fc36.remi.x86_64 9/68 | ||
+ | Upgrading : php-cli-8.2.9-2.fc36.remi.x86_64 10/68 | ||
+ | Upgrading : php-fpm-8.2.9-2.fc36.remi.x86_64 11/68 | ||
+ | Running scriptlet: php-fpm-8.2.9-2.fc36.remi.x86_64 11/68 | ||
+ | Upgrading : php-gd-8.2.9-2.fc36.remi.x86_64 12/68 | ||
+ | Upgrading : php-geos-1.0.0-24.fc36.remi.8.2.x86_64 13/68 | ||
+ | Upgrading : php-gmp-8.2.9-2.fc36.remi.x86_64 14/68 | ||
+ | Upgrading : php-imap-8.2.9-2.fc36.remi.x86_64 15/68 | ||
+ | Upgrading : php-intl-8.2.9-2.fc36.remi.x86_64 16/68 | ||
+ | Upgrading : php-ldap-8.2.9-2.fc36.remi.x86_64 17/68 | ||
+ | Upgrading : php-lz4-0.4.3-1.fc36.remi.8.2.x86_64 18/68 | ||
+ | Upgrading : php-mbstring-8.2.9-2.fc36.remi.x86_64 19/68 | ||
+ | Upgrading : php-opcache-8.2.9-2.fc36.remi.x86_64 20/68 | ||
+ | Upgrading : php-pecl-geoip-1.1.1-16.fc36.remi.8.2.x86_64 21/68 | ||
+ | Upgrading : php-pecl-gnupg-1.5.1-1.fc36.remi.8.2.x86_64 22/68 | ||
+ | Upgrading : php-pecl-imagick-im7-3.7.0-7.fc36.remi.8.2.x86_64 23/68 | ||
+ | Upgrading : php-pecl-json-post-1.1.0-1.fc36.remi.8.2.x86_64 24/68 | ||
+ | Upgrading : php-pecl-krb5-1.1.5-1.fc36.remi.8.2.x86_64 25/68 | ||
+ | Upgrading : php-pecl-mcrypt-1.0.6-1.fc36.remi.8.2.x86_64 26/68 | ||
+ | Upgrading : php-pecl-oauth-2.0.7-6.fc36.remi.8.2.x86_64 27/68 | ||
+ | Upgrading : php-pecl-rrd-2.0.3-2.fc36.remi.8.2.x86_64 28/68 | ||
+ | Upgrading : php-process-8.2.9-2.fc36.remi.x86_64 29/68 | ||
+ | Upgrading : php-pspell-8.2.9-2.fc36.remi.x86_64 30/68 | ||
+ | Upgrading : php-snmp-8.2.9-2.fc36.remi.x86_64 31/68 | ||
+ | Upgrading : php-soap-8.2.9-2.fc36.remi.x86_64 32/68 | ||
+ | Upgrading : php-sodium-8.2.9-2.fc36.remi.x86_64 33/68 | ||
+ | Upgrading : php-xz-1.1.2-2.fc36.remi.8.2.x86_64 34/68 | ||
+ | Cleanup : php-pecl-json-post-1.1.0-1.fc36.remi.7.4.x86_64 35/68 | ||
+ | Cleanup : php-xz-1.1.2-2.fc36.remi.7.4.x86_64 36/68 | ||
+ | Cleanup : php-pecl-rrd-2.0.3-2.fc36.remi.7.4.x86_64 37/68 | ||
+ | Cleanup : php-pecl-oauth-2.0.7-5.fc36.remi.7.4.x86_64 38/68 | ||
+ | Cleanup : php-pecl-mcrypt-1.0.6-1.fc36.remi.7.4.x86_64 39/68 | ||
+ | Cleanup : php-pecl-krb5-1.1.5-1.fc36.remi.7.4.x86_64 40/68 | ||
+ | Cleanup : php-pecl-imagick-im7-3.7.0-7.fc36.remi.7.4.x86_64 41/68 | ||
+ | Cleanup : php-pecl-gnupg-1.5.1-1.fc36.remi.7.4.x86_64 42/68 | ||
+ | Cleanup : php-pecl-geoip-1.1.1-16.fc36.remi.7.4.x86_64 43/68 | ||
+ | Cleanup : php-lz4-0.4.3-1.fc36.remi.7.4.x86_64 44/68 | ||
+ | Cleanup : php-geos-1.0.0-23.fc36.remi.7.4.x86_64 45/68 | ||
+ | Cleanup : php-sodium-7.4.33-8.fc36.remi.x86_64 46/68 | ||
+ | Cleanup : php-soap-7.4.33-8.fc36.remi.x86_64 47/68 | ||
+ | Cleanup : php-snmp-7.4.33-8.fc36.remi.x86_64 48/68 | ||
+ | Cleanup : php-pspell-7.4.33-8.fc36.remi.x86_64 49/68 | ||
+ | Cleanup : php-process-7.4.33-8.fc36.remi.x86_64 50/68 | ||
+ | Cleanup : php-opcache-7.4.33-8.fc36.remi.x86_64 51/68 | ||
+ | Cleanup : php-odbc-7.4.33-8.fc36.remi.x86_64 52/68 | ||
+ | Cleanup : php-mysqlnd-7.4.33-8.fc36.remi.x86_64 53/68 | ||
+ | Cleanup : php-pdo-7.4.33-8.fc36.remi.x86_64 54/68 | ||
+ | Cleanup : php-mbstring-7.4.33-8.fc36.remi.x86_64 55/68 | ||
+ | Cleanup : php-ldap-7.4.33-8.fc36.remi.x86_64 56/68 | ||
+ | Cleanup : php-intl-7.4.33-8.fc36.remi.x86_64 57/68 | ||
+ | Cleanup : php-imap-7.4.33-8.fc36.remi.x86_64 58/68 | ||
+ | Cleanup : php-gmp-7.4.33-8.fc36.remi.x86_64 59/68 | ||
+ | Cleanup : php-gd-7.4.33-8.fc36.remi.x86_64 60/68 | ||
+ | Running scriptlet: php-fpm-7.4.33-8.fc36.remi.x86_64 61/68 | ||
+ | Cleanup : php-fpm-7.4.33-8.fc36.remi.x86_64 61/68 | ||
+ | Cleanup : php-dba-7.4.33-8.fc36.remi.x86_64 62/68 | ||
+ | Cleanup : php-cli-7.4.33-8.fc36.remi.x86_64 63/68 | ||
+ | Cleanup : php-bcmath-7.4.33-8.fc36.remi.x86_64 64/68 | ||
+ | Obsoleting : php-xmlrpc-7.4.33-8.fc36.remi.x86_64 65/68 | ||
+ | Cleanup : php-xml-7.4.33-8.fc36.remi.x86_64 66/68 | ||
+ | Cleanup : php-common-7.4.33-8.fc36.remi.x86_64 67/68 | ||
+ | Obsoleting : php-json-7.4.33-8.fc36.remi.x86_64 68/68 | ||
+ | Running scriptlet: php-json-7.4.33-8.fc36.remi.x86_64 68/68 | ||
+ | Verifying : qdbm-1.8.78-50.fc36.x86_64 1/68 | ||
+ | Verifying : php-pecl-xmlrpc-1.0.0~rc3-2.fc36.remi.8.2.x86_64 2/68 | ||
+ | Verifying : php-xmlrpc-7.4.33-8.fc36.remi.x86_64 3/68 | ||
+ | Verifying : php-bcmath-8.2.9-2.fc36.remi.x86_64 4/68 | ||
+ | Verifying : php-bcmath-7.4.33-8.fc36.remi.x86_64 5/68 | ||
+ | Verifying : php-cli-8.2.9-2.fc36.remi.x86_64 6/68 | ||
+ | Verifying : php-cli-7.4.33-8.fc36.remi.x86_64 7/68 | ||
+ | Verifying : php-common-8.2.9-2.fc36.remi.x86_64 8/68 | ||
+ | Verifying : php-common-7.4.33-8.fc36.remi.x86_64 9/68 | ||
+ | Verifying : php-json-7.4.33-8.fc36.remi.x86_64 10/68 | ||
+ | Verifying : php-dba-8.2.9-2.fc36.remi.x86_64 11/68 | ||
+ | Verifying : php-dba-7.4.33-8.fc36.remi.x86_64 12/68 | ||
+ | Verifying : php-fpm-8.2.9-2.fc36.remi.x86_64 13/68 | ||
+ | Verifying : php-fpm-7.4.33-8.fc36.remi.x86_64 14/68 | ||
+ | Verifying : php-gd-8.2.9-2.fc36.remi.x86_64 15/68 | ||
+ | Verifying : php-gd-7.4.33-8.fc36.remi.x86_64 16/68 | ||
+ | Verifying : php-geos-1.0.0-24.fc36.remi.8.2.x86_64 17/68 | ||
+ | Verifying : php-geos-1.0.0-23.fc36.remi.7.4.x86_64 18/68 | ||
+ | Verifying : php-gmp-8.2.9-2.fc36.remi.x86_64 19/68 | ||
+ | Verifying : php-gmp-7.4.33-8.fc36.remi.x86_64 20/68 | ||
+ | Verifying : php-imap-8.2.9-2.fc36.remi.x86_64 21/68 | ||
+ | Verifying : php-imap-7.4.33-8.fc36.remi.x86_64 22/68 | ||
+ | Verifying : php-intl-8.2.9-2.fc36.remi.x86_64 23/68 | ||
+ | Verifying : php-intl-7.4.33-8.fc36.remi.x86_64 24/68 | ||
+ | Verifying : php-ldap-8.2.9-2.fc36.remi.x86_64 25/68 | ||
+ | Verifying : php-ldap-7.4.33-8.fc36.remi.x86_64 26/68 | ||
+ | Verifying : php-lz4-0.4.3-1.fc36.remi.8.2.x86_64 27/68 | ||
+ | Verifying : php-lz4-0.4.3-1.fc36.remi.7.4.x86_64 28/68 | ||
+ | Verifying : php-mbstring-8.2.9-2.fc36.remi.x86_64 29/68 | ||
+ | Verifying : php-mbstring-7.4.33-8.fc36.remi.x86_64 30/68 | ||
+ | Verifying : php-mysqlnd-8.2.9-2.fc36.remi.x86_64 31/68 | ||
+ | Verifying : php-mysqlnd-7.4.33-8.fc36.remi.x86_64 32/68 | ||
+ | Verifying : php-odbc-8.2.9-2.fc36.remi.x86_64 33/68 | ||
+ | Verifying : php-odbc-7.4.33-8.fc36.remi.x86_64 34/68 | ||
+ | Verifying : php-opcache-8.2.9-2.fc36.remi.x86_64 35/68 | ||
+ | Verifying : php-opcache-7.4.33-8.fc36.remi.x86_64 36/68 | ||
+ | Verifying : php-pdo-8.2.9-2.fc36.remi.x86_64 37/68 | ||
+ | Verifying : php-pdo-7.4.33-8.fc36.remi.x86_64 38/68 | ||
+ | Verifying : php-pecl-geoip-1.1.1-16.fc36.remi.8.2.x86_64 39/68 | ||
+ | Verifying : php-pecl-geoip-1.1.1-16.fc36.remi.7.4.x86_64 40/68 | ||
+ | Verifying : php-pecl-gnupg-1.5.1-1.fc36.remi.8.2.x86_64 41/68 | ||
+ | Verifying : php-pecl-gnupg-1.5.1-1.fc36.remi.7.4.x86_64 42/68 | ||
+ | Verifying : php-pecl-imagick-im7-3.7.0-7.fc36.remi.8.2.x86_64 43/68 | ||
+ | Verifying : php-pecl-imagick-im7-3.7.0-7.fc36.remi.7.4.x86_64 44/68 | ||
+ | Verifying : php-pecl-json-post-1.1.0-1.fc36.remi.8.2.x86_64 45/68 | ||
+ | Verifying : php-pecl-json-post-1.1.0-1.fc36.remi.7.4.x86_64 46/68 | ||
+ | Verifying : php-pecl-krb5-1.1.5-1.fc36.remi.8.2.x86_64 47/68 | ||
+ | Verifying : php-pecl-krb5-1.1.5-1.fc36.remi.7.4.x86_64 48/68 | ||
+ | Verifying : php-pecl-mcrypt-1.0.6-1.fc36.remi.8.2.x86_64 49/68 | ||
+ | Verifying : php-pecl-mcrypt-1.0.6-1.fc36.remi.7.4.x86_64 50/68 | ||
+ | Verifying : php-pecl-oauth-2.0.7-6.fc36.remi.8.2.x86_64 51/68 | ||
+ | Verifying : php-pecl-oauth-2.0.7-5.fc36.remi.7.4.x86_64 52/68 | ||
+ | Verifying : php-pecl-rrd-2.0.3-2.fc36.remi.8.2.x86_64 53/68 | ||
+ | Verifying : php-pecl-rrd-2.0.3-2.fc36.remi.7.4.x86_64 54/68 | ||
+ | Verifying : php-process-8.2.9-2.fc36.remi.x86_64 55/68 | ||
+ | Verifying : php-process-7.4.33-8.fc36.remi.x86_64 56/68 | ||
+ | Verifying : php-pspell-8.2.9-2.fc36.remi.x86_64 57/68 | ||
+ | Verifying : php-pspell-7.4.33-8.fc36.remi.x86_64 58/68 | ||
+ | Verifying : php-snmp-8.2.9-2.fc36.remi.x86_64 59/68 | ||
+ | Verifying : php-snmp-7.4.33-8.fc36.remi.x86_64 60/68 | ||
+ | Verifying : php-soap-8.2.9-2.fc36.remi.x86_64 61/68 | ||
+ | Verifying : php-soap-7.4.33-8.fc36.remi.x86_64 62/68 | ||
+ | Verifying : php-sodium-8.2.9-2.fc36.remi.x86_64 63/68 | ||
+ | Verifying : php-sodium-7.4.33-8.fc36.remi.x86_64 64/68 | ||
+ | Verifying : php-xml-8.2.9-2.fc36.remi.x86_64 65/68 | ||
+ | Verifying : php-xml-7.4.33-8.fc36.remi.x86_64 66/68 | ||
+ | Verifying : php-xz-1.1.2-2.fc36.remi.8.2.x86_64 67/68 | ||
+ | Verifying : php-xz-1.1.2-2.fc36.remi.7.4.x86_64 68/68 | ||
+ | |||
+ | Upgraded: | ||
+ | php-bcmath-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-cli-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-common-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-dba-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-fpm-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-gd-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-geos-1.0.0-24.fc36.remi.8.2.x86_64 | ||
+ | php-gmp-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-imap-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-intl-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-ldap-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-lz4-0.4.3-1.fc36.remi.8.2.x86_64 | ||
+ | php-mbstring-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-mysqlnd-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-odbc-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-opcache-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-pdo-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-pecl-geoip-1.1.1-16.fc36.remi.8.2.x86_64 | ||
+ | php-pecl-gnupg-1.5.1-1.fc36.remi.8.2.x86_64 | ||
+ | php-pecl-imagick-im7-3.7.0-7.fc36.remi.8.2.x86_64 | ||
+ | php-pecl-json-post-1.1.0-1.fc36.remi.8.2.x86_64 | ||
+ | php-pecl-krb5-1.1.5-1.fc36.remi.8.2.x86_64 | ||
+ | php-pecl-mcrypt-1.0.6-1.fc36.remi.8.2.x86_64 | ||
+ | php-pecl-oauth-2.0.7-6.fc36.remi.8.2.x86_64 | ||
+ | php-pecl-rrd-2.0.3-2.fc36.remi.8.2.x86_64 | ||
+ | php-process-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-pspell-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-snmp-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-soap-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-sodium-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-xml-8.2.9-2.fc36.remi.x86_64 | ||
+ | php-xz-1.1.2-2.fc36.remi.8.2.x86_64 | ||
+ | Installed: | ||
+ | php-pecl-xmlrpc-1.0.0~rc3-2.fc36.remi.8.2.x86_64 qdbm-1.8.78-50.fc36.x86_64 | ||
+ | |||
+ | Complete! | ||
+ | </pre> | ||
+ | |||
+ | <br /><br /> | ||
+ | |||
+ | == '''Create PHPInfo.php File - First Test & Diagnostics of PHP Installation''' == | ||
+ | After installing all of the PHP packages, tools and files, it's a good idea to test the installtion to make sure it's installed and configured correctly, as well as show all of the installation's options available. | ||
+ | |||
+ | <br /><br /> | ||
+ | A file commonly named "phpinfo.php" is created as described in the following steps, which does just this! | ||
+ | <br /><br /> | ||
+ | Using the text editor of your choice(I prefer vi/vim, but newbies like pico), create a new file named phpinfo.php, or anything you want, as long as it ends with the .php filename extension, in the root directory of your web server. On Linux, that us usually /var/www/html. Within that file, enter these three lines of text: | ||
<pre style="color:blue"> | <pre style="color:blue"> | ||
<?php | <?php | ||
− | phpinfo() | + | phpinfo(); |
?> | ?> | ||
</pre> | </pre> | ||
<br /><br /> | <br /><br /> | ||
− | Here's the scrollback of me doing it on one of my VM's: | + | Here's the scrollback of me doing it on one of my VM's (Kind of a mini-tutorial on VI~!): |
<pre style="color:blue"> | <pre style="color:blue"> | ||
[jamie@cos8vm8.dawgland.com:~]$ cd /var/www/html/ | [jamie@cos8vm8.dawgland.com:~]$ cd /var/www/html/ | ||
Line 39: | Line 383: | ||
"phpinfo.php" [New File] | "phpinfo.php" [New File] | ||
</pre> | </pre> | ||
− | At this point, I'm in "command" mode, so I need to tap the "I" key to put me into "Insert" mode. Then, I can type in the 3 required lines: | + | At this point, I'm in Vi's "command" mode, so I need to tap the "I" key to put me into "Insert" mode. Then, I can type in the 3 required lines: |
<pre style="color:blue"> | <pre style="color:blue"> | ||
<?php | <?php | ||
Line 46: | Line 390: | ||
</pre> | </pre> | ||
<br /><br /> | <br /><br /> | ||
− | I then need to get out of "Insert" mode within | + | I then need to get out of "Insert" mode within VI/VIM(VIM=Vi Improved), so I tap the "Escape" key to do that, taking me back to "command" mode(there is no prompt or notification you have changed modes - you just need to know what you are doing, which is why most newbies don't care much for VI/VIM!). Once back in "command" mode, most VI guys use the colon and then the "w" key to "write" the file, and the "q" key to quit VI, such as ":wq", without the quotes in my example. The beauty and power of VI is modern versions allow you to use ":x" without the quotes, to exit and save in one command, the "x" command! Here is the screenshot of me doing so: |
<pre style="color:blue"> | <pre style="color:blue"> | ||
<?php | <?php | ||
Line 76: | Line 420: | ||
Once saved, and as long as you've already installed and configured PHP to work with your web server, you can then check it out at http://your-website-address/phpinfo.php and you should see a page similar to this: | Once saved, and as long as you've already installed and configured PHP to work with your web server, you can then check it out at http://your-website-address/phpinfo.php and you should see a page similar to this: | ||
<br /> | <br /> | ||
+ | [[File:PHPINFO Screenshot.jpg|center|thumb|899x899px]] | ||
[jamie@cos8vm8.dawgland.com:/var/www/html]$ | [jamie@cos8vm8.dawgland.com:/var/www/html]$ |
Latest revision as of 03:52, 2 November 2023
PHP - Website scripting language used to create dynamic websites
Custom PHP Distributions - 3rd Party
There are a number of custom PHP distributions out there, usually created for specific use-cases. Others are great when you need a newer version of PHP that what is naitively available for your current version of your Linux distribution.
For instance, the new website app you want to use on your website requires PHP 8.2, but your version of Linux only has PHP 7.4 available through it's normal package repository. There are third-party custom PHP distributions created by these developers that allow you to install the newer version of PHP and it's supported accessories and tools.
Upgrading Third-Party Custom PHP Distribution Repository Configurations
As new software packages and tools become available, so do thier PHP requirements. What once needed PHP 7.4 to run properly now needs PHP version 8.2 to run the new version of the package required. In order to do this properly and keep the system "clean", configured "correctly", you should follow the "standard process" for the particulare package you are dealing with, as all are different, depending on what you are wanting to do in the end.
PHP Upgrade - Real-World Urgent Upgrade Required!
I currently encounreded a real-world urgent upgrade requirement for the currently installed version of PHP on my Fedora 36 workstation laptop with this exact same scenario. I had installed the YUM/DNF PHP repository configuration files for the 3rd-party "Remi php 7.4" packages long ago, when it was the newest available version, and Fedora 36 didn't support any PHP higher than 5.x at the time. Long since then, I have begun to get warning messages on that laptop aobut the outdated and extremely "vulnerable" PHP version 7.4 installed, and that I should upgrade immediatelly.
I had to figure out how to upgrade the Remi repository configuration files to support the latest version of PHP currently available through Remi, and went through this process:
[root@fc36.dawgland.com:~]# dnf module reset php Fedora 36 - x86_64 - Updates 8.5 kB/s | 4.5 kB 00:00 Fedora Modular 36 - x86_64 - Updates 7.4 kB/s | 2.3 kB 00:00 Dependencies resolved. ================================================================================ Package Architecture Version Repository Size ================================================================================ Resetting modules: php Transaction Summary ================================================================================ Is this ok [y/N]: y Complete!
Next, you need to enable the desired release you want/need to use. In my case, I want to use/enable the latest/greatest, PHP version 8.2, so ran this command next:
[root@fc36.dawgland.com:~]# dnf module enable php:remi-8.2 Last metadata expiration check: 0:06:35 ago on Wed 01 Nov 2023 08:32:58 PM PDT. Dependencies resolved. ================================================================================ Package Architecture Version Repository Size ================================================================================ Enabling module streams: php remi-8.2 Transaction Summary ================================================================================ Is this ok [y/N]: y Complete!
Then, to implement and install/upgrade all of the PHP packages to release/version 8.2, run this command, again, as the "root", aka, superuser:
[root@fc36.dawgland.com:~]# dnf update php\* Last metadata expiration check: 0:06:55 ago on Tue 31 Oct 2023 11:30:11 AM PDT. Dependencies resolved. ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: php-pecl-xmlrpc x86_64 1.0.0~rc3-2.fc36.remi.8.2 remi-modular 65 k replacing php-xmlrpc.x86_64 7.4.33-8.fc36.remi Upgrading: php-bcmath x86_64 8.2.9-2.fc36.remi remi-modular 47 k php-cli x86_64 8.2.9-2.fc36.remi remi-modular 5.4 M php-common x86_64 8.2.9-2.fc36.remi remi-modular 842 k replacing php-json.x86_64 7.4.33-8.fc36.remi php-dba x86_64 8.2.9-2.fc36.remi remi-modular 51 k php-fpm x86_64 8.2.9-2.fc36.remi remi-modular 1.9 M php-gd x86_64 8.2.9-2.fc36.remi remi-modular 62 k php-geos x86_64 1.0.0-24.fc36.remi.8.2 remi-modular 60 k php-gmp x86_64 8.2.9-2.fc36.remi remi-modular 49 k php-imap x86_64 8.2.9-2.fc36.remi remi-modular 69 k php-intl x86_64 8.2.9-2.fc36.remi remi-modular 233 k php-ldap x86_64 8.2.9-2.fc36.remi remi-modular 64 k php-lz4 x86_64 0.4.3-1.fc36.remi.8.2 remi-modular 18 k php-mbstring x86_64 8.2.9-2.fc36.remi remi-modular 577 k php-mysqlnd x86_64 8.2.9-2.fc36.remi remi-modular 216 k php-odbc x86_64 8.2.9-2.fc36.remi remi-modular 65 k php-opcache x86_64 8.2.9-2.fc36.remi remi-modular 610 k php-pdo x86_64 8.2.9-2.fc36.remi remi-modular 118 k php-pecl-geoip x86_64 1.1.1-16.fc36.remi.8.2 remi-modular 28 k php-pecl-gnupg x86_64 1.5.1-1.fc36.remi.8.2 remi-modular 36 k php-pecl-imagick-im7 x86_64 3.7.0-7.fc36.remi.8.2 remi-modular 203 k php-pecl-json-post x86_64 1.1.0-1.fc36.remi.8.2 remi-modular 22 k php-pecl-krb5 x86_64 1.1.5-1.fc36.remi.8.2 remi-modular 64 k php-pecl-mcrypt x86_64 1.0.6-1.fc36.remi.8.2 remi-modular 35 k php-pecl-oauth x86_64 2.0.7-6.fc36.remi.8.2 remi-modular 100 k php-pecl-rrd x86_64 2.0.3-2.fc36.remi.8.2 remi-modular 29 k php-process x86_64 8.2.9-2.fc36.remi remi-modular 65 k php-pspell x86_64 8.2.9-2.fc36.remi remi-modular 27 k php-snmp x86_64 8.2.9-2.fc36.remi remi-modular 47 k php-soap x86_64 8.2.9-2.fc36.remi remi-modular 202 k php-sodium x86_64 8.2.9-2.fc36.remi remi-modular 62 k php-xml x86_64 8.2.9-2.fc36.remi remi-modular 215 k php-xz x86_64 1.1.2-2.fc36.remi.8.2 remi-modular 21 k Installing dependencies: qdbm x86_64 1.8.78-50.fc36 fedora 279 k Transaction Summary ================================================================================ Install 2 Packages Upgrade 32 Packages Total download size: 12 M Is this ok [y/N]: y Downloading Packages: (1/34): php-bcmath-8.2.9-2.fc36.remi.x86_64.rpm 28 kB/s | 47 kB 00:01 (2/34): php-pecl-xmlrpc-1.0.0~rc3-2.fc36.remi.8 35 kB/s | 65 kB 00:01 (3/34): php-common-8.2.9-2.fc36.remi.x86_64.rpm 584 kB/s | 842 kB 00:01 (4/34): php-dba-8.2.9-2.fc36.remi.x86_64.rpm 228 kB/s | 51 kB 00:00 (5/34): qdbm-1.8.78-50.fc36.x86_64.rpm 51 kB/s | 279 kB 00:05 (6/34): php-fpm-8.2.9-2.fc36.remi.x86_64.rpm 759 kB/s | 1.9 MB 00:02 (7/34): php-gd-8.2.9-2.fc36.remi.x86_64.rpm 89 kB/s | 62 kB 00:00 (8/34): php-gmp-8.2.9-2.fc36.remi.x86_64.rpm 220 kB/s | 49 kB 00:00 (9/34): php-geos-1.0.0-24.fc36.remi.8.2.x86_64. 111 kB/s | 60 kB 00:00 (10/34): php-imap-8.2.9-2.fc36.remi.x86_64.rpm 283 kB/s | 69 kB 00:00 (11/34): php-intl-8.2.9-2.fc36.remi.x86_64.rpm 445 kB/s | 233 kB 00:00 (12/34): php-ldap-8.2.9-2.fc36.remi.x86_64.rpm 105 kB/s | 64 kB 00:00 (13/34): php-lz4-0.4.3-1.fc36.remi.8.2.x86_64.r 85 kB/s | 18 kB 00:00 (14/34): php-mysqlnd-8.2.9-2.fc36.remi.x86_64.r 343 kB/s | 216 kB 00:00 (15/34): php-mbstring-8.2.9-2.fc36.remi.x86_64. 530 kB/s | 577 kB 00:01 (16/34): php-odbc-8.2.9-2.fc36.remi.x86_64.rpm 136 kB/s | 65 kB 00:00 (17/34): php-cli-8.2.9-2.fc36.remi.x86_64.rpm 773 kB/s | 5.4 MB 00:07 (18/34): php-pdo-8.2.9-2.fc36.remi.x86_64.rpm 293 kB/s | 118 kB 00:00 (19/34): php-pecl-geoip-1.1.1-16.fc36.remi.8.2. 113 kB/s | 28 kB 00:00 (20/34): php-pecl-gnupg-1.5.1-1.fc36.remi.8.2.x 76 kB/s | 36 kB 00:00 (21/34): php-pecl-imagick-im7-3.7.0-7.fc36.remi 518 kB/s | 203 kB 00:00 (22/34): php-pecl-json-post-1.1.0-1.fc36.remi.8 101 kB/s | 22 kB 00:00 (23/34): php-opcache-8.2.9-2.fc36.remi.x86_64.r 490 kB/s | 610 kB 00:01 (24/34): php-pecl-krb5-1.1.5-1.fc36.remi.8.2.x8 140 kB/s | 64 kB 00:00 (25/34): php-pecl-mcrypt-1.0.6-1.fc36.remi.8.2. 76 kB/s | 35 kB 00:00 (26/34): php-pecl-rrd-2.0.3-2.fc36.remi.8.2.x86 127 kB/s | 29 kB 00:00 (27/34): php-pecl-oauth-2.0.7-6.fc36.remi.8.2.x 169 kB/s | 100 kB 00:00 (28/34): php-pspell-8.2.9-2.fc36.remi.x86_64.rp 120 kB/s | 27 kB 00:00 (29/34): php-snmp-8.2.9-2.fc36.remi.x86_64.rpm 209 kB/s | 47 kB 00:00 (30/34): php-process-8.2.9-2.fc36.remi.x86_64.r 145 kB/s | 65 kB 00:00 (31/34): php-sodium-8.2.9-2.fc36.remi.x86_64.rp 271 kB/s | 62 kB 00:00 (32/34): php-soap-8.2.9-2.fc36.remi.x86_64.rpm 524 kB/s | 202 kB 00:00 (33/34): php-xz-1.1.2-2.fc36.remi.8.2.x86_64.rp 91 kB/s | 21 kB 00:00 (34/34): php-xml-8.2.9-2.fc36.remi.x86_64.rpm 401 kB/s | 215 kB 00:00 -------------------------------------------------------------------------------- Total 1.0 MB/s | 12 MB 00:11 Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Running scriptlet: php-common-8.2.9-2.fc36.remi.x86_64 1/1 Running scriptlet: php-common-8.2.9-2.fc36.remi.x86_64 1/68 Upgrading : php-common-8.2.9-2.fc36.remi.x86_64 1/68 Upgrading : php-pdo-8.2.9-2.fc36.remi.x86_64 2/68 Upgrading : php-xml-8.2.9-2.fc36.remi.x86_64 3/68 Installing : qdbm-1.8.78-50.fc36.x86_64 4/68 Upgrading : php-dba-8.2.9-2.fc36.remi.x86_64 5/68 Installing : php-pecl-xmlrpc-1.0.0~rc3-2.fc36.remi.8.2.x86_64 6/68 Upgrading : php-mysqlnd-8.2.9-2.fc36.remi.x86_64 7/68 Upgrading : php-odbc-8.2.9-2.fc36.remi.x86_64 8/68 Upgrading : php-bcmath-8.2.9-2.fc36.remi.x86_64 9/68 Upgrading : php-cli-8.2.9-2.fc36.remi.x86_64 10/68 Upgrading : php-fpm-8.2.9-2.fc36.remi.x86_64 11/68 Running scriptlet: php-fpm-8.2.9-2.fc36.remi.x86_64 11/68 Upgrading : php-gd-8.2.9-2.fc36.remi.x86_64 12/68 Upgrading : php-geos-1.0.0-24.fc36.remi.8.2.x86_64 13/68 Upgrading : php-gmp-8.2.9-2.fc36.remi.x86_64 14/68 Upgrading : php-imap-8.2.9-2.fc36.remi.x86_64 15/68 Upgrading : php-intl-8.2.9-2.fc36.remi.x86_64 16/68 Upgrading : php-ldap-8.2.9-2.fc36.remi.x86_64 17/68 Upgrading : php-lz4-0.4.3-1.fc36.remi.8.2.x86_64 18/68 Upgrading : php-mbstring-8.2.9-2.fc36.remi.x86_64 19/68 Upgrading : php-opcache-8.2.9-2.fc36.remi.x86_64 20/68 Upgrading : php-pecl-geoip-1.1.1-16.fc36.remi.8.2.x86_64 21/68 Upgrading : php-pecl-gnupg-1.5.1-1.fc36.remi.8.2.x86_64 22/68 Upgrading : php-pecl-imagick-im7-3.7.0-7.fc36.remi.8.2.x86_64 23/68 Upgrading : php-pecl-json-post-1.1.0-1.fc36.remi.8.2.x86_64 24/68 Upgrading : php-pecl-krb5-1.1.5-1.fc36.remi.8.2.x86_64 25/68 Upgrading : php-pecl-mcrypt-1.0.6-1.fc36.remi.8.2.x86_64 26/68 Upgrading : php-pecl-oauth-2.0.7-6.fc36.remi.8.2.x86_64 27/68 Upgrading : php-pecl-rrd-2.0.3-2.fc36.remi.8.2.x86_64 28/68 Upgrading : php-process-8.2.9-2.fc36.remi.x86_64 29/68 Upgrading : php-pspell-8.2.9-2.fc36.remi.x86_64 30/68 Upgrading : php-snmp-8.2.9-2.fc36.remi.x86_64 31/68 Upgrading : php-soap-8.2.9-2.fc36.remi.x86_64 32/68 Upgrading : php-sodium-8.2.9-2.fc36.remi.x86_64 33/68 Upgrading : php-xz-1.1.2-2.fc36.remi.8.2.x86_64 34/68 Cleanup : php-pecl-json-post-1.1.0-1.fc36.remi.7.4.x86_64 35/68 Cleanup : php-xz-1.1.2-2.fc36.remi.7.4.x86_64 36/68 Cleanup : php-pecl-rrd-2.0.3-2.fc36.remi.7.4.x86_64 37/68 Cleanup : php-pecl-oauth-2.0.7-5.fc36.remi.7.4.x86_64 38/68 Cleanup : php-pecl-mcrypt-1.0.6-1.fc36.remi.7.4.x86_64 39/68 Cleanup : php-pecl-krb5-1.1.5-1.fc36.remi.7.4.x86_64 40/68 Cleanup : php-pecl-imagick-im7-3.7.0-7.fc36.remi.7.4.x86_64 41/68 Cleanup : php-pecl-gnupg-1.5.1-1.fc36.remi.7.4.x86_64 42/68 Cleanup : php-pecl-geoip-1.1.1-16.fc36.remi.7.4.x86_64 43/68 Cleanup : php-lz4-0.4.3-1.fc36.remi.7.4.x86_64 44/68 Cleanup : php-geos-1.0.0-23.fc36.remi.7.4.x86_64 45/68 Cleanup : php-sodium-7.4.33-8.fc36.remi.x86_64 46/68 Cleanup : php-soap-7.4.33-8.fc36.remi.x86_64 47/68 Cleanup : php-snmp-7.4.33-8.fc36.remi.x86_64 48/68 Cleanup : php-pspell-7.4.33-8.fc36.remi.x86_64 49/68 Cleanup : php-process-7.4.33-8.fc36.remi.x86_64 50/68 Cleanup : php-opcache-7.4.33-8.fc36.remi.x86_64 51/68 Cleanup : php-odbc-7.4.33-8.fc36.remi.x86_64 52/68 Cleanup : php-mysqlnd-7.4.33-8.fc36.remi.x86_64 53/68 Cleanup : php-pdo-7.4.33-8.fc36.remi.x86_64 54/68 Cleanup : php-mbstring-7.4.33-8.fc36.remi.x86_64 55/68 Cleanup : php-ldap-7.4.33-8.fc36.remi.x86_64 56/68 Cleanup : php-intl-7.4.33-8.fc36.remi.x86_64 57/68 Cleanup : php-imap-7.4.33-8.fc36.remi.x86_64 58/68 Cleanup : php-gmp-7.4.33-8.fc36.remi.x86_64 59/68 Cleanup : php-gd-7.4.33-8.fc36.remi.x86_64 60/68 Running scriptlet: php-fpm-7.4.33-8.fc36.remi.x86_64 61/68 Cleanup : php-fpm-7.4.33-8.fc36.remi.x86_64 61/68 Cleanup : php-dba-7.4.33-8.fc36.remi.x86_64 62/68 Cleanup : php-cli-7.4.33-8.fc36.remi.x86_64 63/68 Cleanup : php-bcmath-7.4.33-8.fc36.remi.x86_64 64/68 Obsoleting : php-xmlrpc-7.4.33-8.fc36.remi.x86_64 65/68 Cleanup : php-xml-7.4.33-8.fc36.remi.x86_64 66/68 Cleanup : php-common-7.4.33-8.fc36.remi.x86_64 67/68 Obsoleting : php-json-7.4.33-8.fc36.remi.x86_64 68/68 Running scriptlet: php-json-7.4.33-8.fc36.remi.x86_64 68/68 Verifying : qdbm-1.8.78-50.fc36.x86_64 1/68 Verifying : php-pecl-xmlrpc-1.0.0~rc3-2.fc36.remi.8.2.x86_64 2/68 Verifying : php-xmlrpc-7.4.33-8.fc36.remi.x86_64 3/68 Verifying : php-bcmath-8.2.9-2.fc36.remi.x86_64 4/68 Verifying : php-bcmath-7.4.33-8.fc36.remi.x86_64 5/68 Verifying : php-cli-8.2.9-2.fc36.remi.x86_64 6/68 Verifying : php-cli-7.4.33-8.fc36.remi.x86_64 7/68 Verifying : php-common-8.2.9-2.fc36.remi.x86_64 8/68 Verifying : php-common-7.4.33-8.fc36.remi.x86_64 9/68 Verifying : php-json-7.4.33-8.fc36.remi.x86_64 10/68 Verifying : php-dba-8.2.9-2.fc36.remi.x86_64 11/68 Verifying : php-dba-7.4.33-8.fc36.remi.x86_64 12/68 Verifying : php-fpm-8.2.9-2.fc36.remi.x86_64 13/68 Verifying : php-fpm-7.4.33-8.fc36.remi.x86_64 14/68 Verifying : php-gd-8.2.9-2.fc36.remi.x86_64 15/68 Verifying : php-gd-7.4.33-8.fc36.remi.x86_64 16/68 Verifying : php-geos-1.0.0-24.fc36.remi.8.2.x86_64 17/68 Verifying : php-geos-1.0.0-23.fc36.remi.7.4.x86_64 18/68 Verifying : php-gmp-8.2.9-2.fc36.remi.x86_64 19/68 Verifying : php-gmp-7.4.33-8.fc36.remi.x86_64 20/68 Verifying : php-imap-8.2.9-2.fc36.remi.x86_64 21/68 Verifying : php-imap-7.4.33-8.fc36.remi.x86_64 22/68 Verifying : php-intl-8.2.9-2.fc36.remi.x86_64 23/68 Verifying : php-intl-7.4.33-8.fc36.remi.x86_64 24/68 Verifying : php-ldap-8.2.9-2.fc36.remi.x86_64 25/68 Verifying : php-ldap-7.4.33-8.fc36.remi.x86_64 26/68 Verifying : php-lz4-0.4.3-1.fc36.remi.8.2.x86_64 27/68 Verifying : php-lz4-0.4.3-1.fc36.remi.7.4.x86_64 28/68 Verifying : php-mbstring-8.2.9-2.fc36.remi.x86_64 29/68 Verifying : php-mbstring-7.4.33-8.fc36.remi.x86_64 30/68 Verifying : php-mysqlnd-8.2.9-2.fc36.remi.x86_64 31/68 Verifying : php-mysqlnd-7.4.33-8.fc36.remi.x86_64 32/68 Verifying : php-odbc-8.2.9-2.fc36.remi.x86_64 33/68 Verifying : php-odbc-7.4.33-8.fc36.remi.x86_64 34/68 Verifying : php-opcache-8.2.9-2.fc36.remi.x86_64 35/68 Verifying : php-opcache-7.4.33-8.fc36.remi.x86_64 36/68 Verifying : php-pdo-8.2.9-2.fc36.remi.x86_64 37/68 Verifying : php-pdo-7.4.33-8.fc36.remi.x86_64 38/68 Verifying : php-pecl-geoip-1.1.1-16.fc36.remi.8.2.x86_64 39/68 Verifying : php-pecl-geoip-1.1.1-16.fc36.remi.7.4.x86_64 40/68 Verifying : php-pecl-gnupg-1.5.1-1.fc36.remi.8.2.x86_64 41/68 Verifying : php-pecl-gnupg-1.5.1-1.fc36.remi.7.4.x86_64 42/68 Verifying : php-pecl-imagick-im7-3.7.0-7.fc36.remi.8.2.x86_64 43/68 Verifying : php-pecl-imagick-im7-3.7.0-7.fc36.remi.7.4.x86_64 44/68 Verifying : php-pecl-json-post-1.1.0-1.fc36.remi.8.2.x86_64 45/68 Verifying : php-pecl-json-post-1.1.0-1.fc36.remi.7.4.x86_64 46/68 Verifying : php-pecl-krb5-1.1.5-1.fc36.remi.8.2.x86_64 47/68 Verifying : php-pecl-krb5-1.1.5-1.fc36.remi.7.4.x86_64 48/68 Verifying : php-pecl-mcrypt-1.0.6-1.fc36.remi.8.2.x86_64 49/68 Verifying : php-pecl-mcrypt-1.0.6-1.fc36.remi.7.4.x86_64 50/68 Verifying : php-pecl-oauth-2.0.7-6.fc36.remi.8.2.x86_64 51/68 Verifying : php-pecl-oauth-2.0.7-5.fc36.remi.7.4.x86_64 52/68 Verifying : php-pecl-rrd-2.0.3-2.fc36.remi.8.2.x86_64 53/68 Verifying : php-pecl-rrd-2.0.3-2.fc36.remi.7.4.x86_64 54/68 Verifying : php-process-8.2.9-2.fc36.remi.x86_64 55/68 Verifying : php-process-7.4.33-8.fc36.remi.x86_64 56/68 Verifying : php-pspell-8.2.9-2.fc36.remi.x86_64 57/68 Verifying : php-pspell-7.4.33-8.fc36.remi.x86_64 58/68 Verifying : php-snmp-8.2.9-2.fc36.remi.x86_64 59/68 Verifying : php-snmp-7.4.33-8.fc36.remi.x86_64 60/68 Verifying : php-soap-8.2.9-2.fc36.remi.x86_64 61/68 Verifying : php-soap-7.4.33-8.fc36.remi.x86_64 62/68 Verifying : php-sodium-8.2.9-2.fc36.remi.x86_64 63/68 Verifying : php-sodium-7.4.33-8.fc36.remi.x86_64 64/68 Verifying : php-xml-8.2.9-2.fc36.remi.x86_64 65/68 Verifying : php-xml-7.4.33-8.fc36.remi.x86_64 66/68 Verifying : php-xz-1.1.2-2.fc36.remi.8.2.x86_64 67/68 Verifying : php-xz-1.1.2-2.fc36.remi.7.4.x86_64 68/68 Upgraded: php-bcmath-8.2.9-2.fc36.remi.x86_64 php-cli-8.2.9-2.fc36.remi.x86_64 php-common-8.2.9-2.fc36.remi.x86_64 php-dba-8.2.9-2.fc36.remi.x86_64 php-fpm-8.2.9-2.fc36.remi.x86_64 php-gd-8.2.9-2.fc36.remi.x86_64 php-geos-1.0.0-24.fc36.remi.8.2.x86_64 php-gmp-8.2.9-2.fc36.remi.x86_64 php-imap-8.2.9-2.fc36.remi.x86_64 php-intl-8.2.9-2.fc36.remi.x86_64 php-ldap-8.2.9-2.fc36.remi.x86_64 php-lz4-0.4.3-1.fc36.remi.8.2.x86_64 php-mbstring-8.2.9-2.fc36.remi.x86_64 php-mysqlnd-8.2.9-2.fc36.remi.x86_64 php-odbc-8.2.9-2.fc36.remi.x86_64 php-opcache-8.2.9-2.fc36.remi.x86_64 php-pdo-8.2.9-2.fc36.remi.x86_64 php-pecl-geoip-1.1.1-16.fc36.remi.8.2.x86_64 php-pecl-gnupg-1.5.1-1.fc36.remi.8.2.x86_64 php-pecl-imagick-im7-3.7.0-7.fc36.remi.8.2.x86_64 php-pecl-json-post-1.1.0-1.fc36.remi.8.2.x86_64 php-pecl-krb5-1.1.5-1.fc36.remi.8.2.x86_64 php-pecl-mcrypt-1.0.6-1.fc36.remi.8.2.x86_64 php-pecl-oauth-2.0.7-6.fc36.remi.8.2.x86_64 php-pecl-rrd-2.0.3-2.fc36.remi.8.2.x86_64 php-process-8.2.9-2.fc36.remi.x86_64 php-pspell-8.2.9-2.fc36.remi.x86_64 php-snmp-8.2.9-2.fc36.remi.x86_64 php-soap-8.2.9-2.fc36.remi.x86_64 php-sodium-8.2.9-2.fc36.remi.x86_64 php-xml-8.2.9-2.fc36.remi.x86_64 php-xz-1.1.2-2.fc36.remi.8.2.x86_64 Installed: php-pecl-xmlrpc-1.0.0~rc3-2.fc36.remi.8.2.x86_64 qdbm-1.8.78-50.fc36.x86_64 Complete!
Create PHPInfo.php File - First Test & Diagnostics of PHP Installation
After installing all of the PHP packages, tools and files, it's a good idea to test the installtion to make sure it's installed and configured correctly, as well as show all of the installation's options available.
A file commonly named "phpinfo.php" is created as described in the following steps, which does just this!
Using the text editor of your choice(I prefer vi/vim, but newbies like pico), create a new file named phpinfo.php, or anything you want, as long as it ends with the .php filename extension, in the root directory of your web server. On Linux, that us usually /var/www/html. Within that file, enter these three lines of text:
<?php phpinfo(); ?>
Here's the scrollback of me doing it on one of my VM's (Kind of a mini-tutorial on VI~!):
[jamie@cos8vm8.dawgland.com:~]$ cd /var/www/html/ [jamie@cos8vm8.dawgland.com:/var/www/html]$ sudo vi phpinfo.php
I then hit the "ENTER" key, taking me into a blank page, as seen here:
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ "phpinfo.php" [New File]
At this point, I'm in Vi's "command" mode, so I need to tap the "I" key to put me into "Insert" mode. Then, I can type in the 3 required lines:
<?php phpinfo() ?>
I then need to get out of "Insert" mode within VI/VIM(VIM=Vi Improved), so I tap the "Escape" key to do that, taking me back to "command" mode(there is no prompt or notification you have changed modes - you just need to know what you are doing, which is why most newbies don't care much for VI/VIM!). Once back in "command" mode, most VI guys use the colon and then the "w" key to "write" the file, and the "q" key to quit VI, such as ":wq", without the quotes in my example. The beauty and power of VI is modern versions allow you to use ":x" without the quotes, to exit and save in one command, the "x" command! Here is the screenshot of me doing so:
<?php phpinfo() ?> ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ :x
Once saved, and as long as you've already installed and configured PHP to work with your web server, you can then check it out at http://your-website-address/phpinfo.php and you should see a page similar to this:
[jamie@cos8vm8.dawgland.com:/var/www/html]$