it-swarm.com.de

Was sind PHP Erweiterungen und Bibliotheken WP Bedürfnisse und/oder Verwendungen?

Codex erwähnt nur die PHP -Version in den Serveranforderungen , jedoch kann PHP in einem ziemlich großen Bereich von Ausschluss/Einschluss verschiedener Teile konfiguriert werden.

Was sind Erweiterungen/Bibliotheken, die:

  1. sind erforderlich, damit WP überhaupt funktioniert? MySQL ...
  2. werden für bestimmte Funktionen benötigt? G'tt? ...
  3. werden für die bestmögliche Bedienung bestimmter Funktionen bevorzugt? cURL ...
  4. werden häufig von Plugins verwendet? Zip ...
76
Rarst

Ich habe darüber nachgedacht und die Größe von WP Codebasis (einschließlich gebündelter Bibliotheken) angegeben. Es scheint nicht sehr realistisch zu sein, eine solche Liste von Hand zu kompilieren (und sie für jede neue Version zu wiederholen - meh).

Ich suchte nach einem geeigneten statischen Code-Analysetool - PHP_CompatInfo und erstellte nach einigem Basteln den folgenden Bericht über die von Core verwendeten Erweiterungen (Version 3.3.1 gescannt):

  • cURL - 127 benutzt (erfordert libcurl )

    • HTTP API (Klasse WP_Http_curl)
    • url_is_accessable_via_ssl()
    • SimplePie (mit Klasse WP_SimplePie_File überschrieben)
    • GoogleSpell (aus TinyMCE-Paket, wird nicht verwendet?)
  • Datum/Uhrzeit - 367 verwendet

  • DOM - 6 benutzt (erfordert libxml )

    • iis7_rewrite_rule_exists()
    • iis7_delete_rewrite_rule()
    • iis7_add_rewrite_rule()
    • saveDomDocument()
  • POSIX Regex - 23 verwendet

  • Filter - 2 verwendet

    • klasse PHPMailer->ValidateAddress() (optional)
  • FTP - 72 verwendet

    • klasse ftp_base
    • klasse ftp ( pure und sockets versions)
    • klasse WP_Filesystem_FTPext
    • klasse WP_Filesystem_ftpsockets
  • Gd - 56 verwendet

    • wp-admin\includes\image-edit.php
    • wp-admin\includes\image.php
    • wp-includes\media.php
  • Hash - 6 verwendet

    • wp-includes\pluggable.php mehrfach verwendbar (optional - Fallback in wp-includes\compat.php)
  • iconv - 5 verwendet

    • klasse SimplePie (optional)
    • wp_check_invalid_utf8() (optional)
    • wp-mail.php (optional)
  • JSON - 20 verwendet

    • optional, Fallbacks in wp-includes/compat.php
  • libxml - 4 verwendet

    • klasse WP_oEmbed->_parse_xml() (optional)
    • SimplePie
  • Multibyte String - 29 verwendet

    • einige Fehler in wp-includes/compat.php
  • MySQL - 60 verwendet

    • klasse wpdb
    • klasse SimplePie_Cache (mit Klasse WP_Feed_Cache überschrieben)
  • OpenSSL - 4 verwendet

    • klasse PHPMailer
  • PCRE - 743 verwendet

  • SimpleXML - 1 verwendet

    • klasse WP_oEmbed (scheint optional zu sein)
  • Sockets - 64 verwendet

    • klasse ftp (Implementierung von sockets)
  • SPL - 3 verwendet

  • Tokenizer - 3 verwendet

    • wp_doc_link_parse() (optional)
  • XML ​​Parser - 89 verwendet

  • XMLReader - 1 verwendet

    • SimplePie (scheint optional zu sein)
  • Zlib - 30 verwendet

87
Rarst

Die Antwort darauf könnte kompliziert und sehr lang sein, soweit ich weiß, wird es auch einige Unterschiede zwischen Servern und Betriebssystemen (IIS, Apache) geben. Ich kann nicht sagen, dass die folgende Liste eine VOLLSTÄNDIGE Liste ist, aber sie enthält Einige von denen, die ich kenne, sind erforderlich:

  • Curl und CurlSSL - Nicht sicher, ob esERFORDERLICH IST, aber ein Großteil des WordPress-Codes wird es verwenden, wenn es verfügbar ist. Viele Plugins erfordern jedochit und/oder werden ohne es eingeschränkte Funktionen haben.

  • Exif - ermöglicht Media Handler von WordPress, Exif-Daten aus Bildern zu ziehen.

  • Gettext - .po .mo Handling Übersetzung Lokalisierung Internationalisierung ..

  • FTP- wird verwendet, um Plugins und WordPress-Upgrades über FTP durchzuführen.

  • G'tt - Keine Einführung nötig, oder?.

  • Iconv - Zeichensatzkonvertierungen für alles von Mail bis RSS-Parsing.

  • Mbregex und Mbstring - der Name ist ziemlich beschreibend - bieten Funktionen, die überall verwendet werden :-)

  • Mcrypt - Nicht für WordPress benötigt, aber viele Plugins benötigen es.

  • Mime Magic - Veraltet jetzt in WordPress - aber immer noch gut für die Kompatibilität zu haben.

  • * MySQL und MySQL des Systems * - wir alle wissen, was das ist und warum es benötigt wird, nein?

  • Openssl - Diese Bibliothek wird verwendet, um mit SSL-Zertifikaten verschlüsselte Verbindungen zu verarbeiten, damit WordPress möglicherweise eine Verbindung zu einem beliebigen SSL (https) -verschlüsselten Speicherort herstellen kann.

  • POSIX- wird verwendet, um sicherzustellen, dass WordPress Dateiberechtigungen und -eigner ordnungsgemäß verwaltet.

  • Path Info Check - einige Permalink-Setups.

  • Pspell - Rechtschreibprüfungsfunktionen für TinyMCE,.

  • Sockets - Verwaltung von FTP-Verbindungen und Mail-Handling AKA SMTP und POP in WordPress.

  • Zip - Nicht sicher, ob erforderlich - aber diese plattformübergreifende kompatible Klasse zum Erstellen und Extrahieren von Zip-Dateien wird von WordPress verwendet, sofern verfügbar.

  • Zlib - In vielen Fällen verwendet. Beispiel - Js und CSS-Dateien Komprimierung. Auch hier bin ich mir nicht sicher, obERFORDERLICH IST.aber erforderlich.

Wie oben erwähnt - dies ist keineswegs eine vollständige Liste - Es wurde vor etwa einem Jahr zusammengestellt - und es könnte ein Update erforderlich sein. Viele dieser Funktionen sind nicht genauERFORDERLICH, aberEMPFOHLEN. In vielen Fällen verwendet WordPress eine Funktion, WENN sie verfügbar ist, und wenn nicht, ignoriert WordPress die Aufgabe. Ein gutes Beispiel ist das Fehlen einer Gd-Bibliothek, die WordPress nicht anhält, aber die hochgeladenen Bilder nicht zuschneidet, in der Größe ändert oder verändert - so bleibt das Original erhalten (und die Option "Größe" in "Einfügen" wird ausgegraut image to post "-Funktion) ..

Als Randnotiz - ich würde auch sagen, dass diese Frage auf serverfault.com wahrscheinlich korrektere/aktuellere Antworten erhält als hier ...

26
krembo99

( Dies ist keine Antwort. Nur ein paar nützliche Informationen. Wenn Sie der Meinung sind, dass diese Informationen nicht nützlich sind, lassen Sie es mich wissen, ich werde sie einfach löschen.)

Ich denke, in Bezug auf Pakete zu sprechen, wäre für Neulinge einfacher, aber da Pakete von System zu System variieren, ist es schwierig, alle abzudecken.

Da ich Erfahrung mit Debian (und Debian-basierten Distributionen) habe, möchte ich diese spezifischen Informationen weitergeben:

  • php5-cli
  • php5-dev
  • php5-fpm
  • php5-cgi
  • pHP5-MySQL
  • php5-xmlrpc
  • pHP5-Curl
  • php5-Gd
  • php-apc (nicht erforderlich, aber empfohlen)
  • pHP-Birne
  • php5-imap
  • php5-mcrypt
  • php5-pspell

Mit den oben genannten Paketen werden alle in den anderen Antworten genannten Erweiterungen/Bibliotheken/Module installiert.alles außer Mime Magic, das von WordPress nicht mehr benötigt wird .

Eine andere gute Möglichkeit, um sicherzustellen, dass Ihr Server zu 100% mit WordPress kompatibel ist, besteht darin, zu überprüfen, mit welchen Paketen die verwalteten Hosting-Unternehmen vorinstalliert sind. Da sie jahrelange Erfahrung mit Kundenbeschwerden über Inkompatibilitäten haben, wissen sie es besser.

Im Falle von Hostgator enthalten die vorinstallierten PHP -Module (wahrscheinlich benötigen Sie nur die meisten, aber nicht alle):

PHP modules pre-installed by Hostgator

Media Temple bietet eine phpinfo(); -Datei, mit der Sie die Konfiguration überprüfen können. Es ist auch zu Vergleichszwecken nützlich.

13
its_me

Ich habe meinen WordPress-Umgebungstester entwickelt. Es ist eine einfache Klasse, die auf Web-SAPI oder CLI ausgeführt wird. Dies ist die gepflegte Version https://github.com/szepeviktor/debian-server-tools/blob/master/webserver/php-env-check.php

<?php
/**
 * Check PHP environment.
 *
 * Usage through a webserver
 *     wget -q -O - "https://example.com/php-env-check.php"; echo
 * Usage on CLI
 *     php /path/to/php-env-check.php
 *
 * @package php-env-check
 * @version 0.2.0
 * @author Viktor Szépe <[email protected]>
 */

namespace O1;

// Local access only
if ( php_sapi_name() !== 'cli' && $_SERVER['REMOTE_ADDR'] !== $_SERVER['SERVER_ADDR'] ) {
    header( 'Status: 403 Forbidden' );
    header( 'HTTP/1.1 403 Forbidden', true, 403 );
    header( 'Connection: Close' );
    exit;
}

// Remove cached version of this file
if ( function_exists( 'opcache_invalidate' ) ) {
    opcache_invalidate( __FILE__ );
}

// Check environment
$check = new Check_Env();
$status = empty( $check->errors );

// Display report and exit
print json_encode( $check->errors );
exit( $status ? 0 : 1 );

/**
 * Check PHP configuration.
 */
final class Check_Env {

    /**
     * List of errors.
     */
    public $errors = array();

    /**
     * Run the checks.
     *
     * @param void
     */
    public function __construct() {

        // Extensions for WordPress on PHP 7.0
        // http://wordpress.stackexchange.com/a/42212

        // Engine version
        $this->assert( 'php', 70013, PHP_VERSION_ID );

        // Core directives
        $this->assert_directive( 'expose_php', '' );
        $this->assert_directive( 'allow_url_fopen', '' );
        $this->assert_directive( 'mail.add_x_header', '' );
        $this->assert_directive( 'realpath_cache_size', '64k' );
        $this->assert_directive( 'max_execution_time', '30' );
        $this->assert_directive( 'memory_limit', '128M' );
        $this->assert_directive( 'max_input_vars', '1000' );
        $this->assert_directive( 'post_max_size', '4M' );
        $this->assert_directive( 'upload_max_filesize', '4M' );

        // Compiled in Extensions
        // php -n -m | paste -s -d " "
        // Core date filter hash libxml openssl pcntl pcre Reflection session SPL standard zlib
        $this->assert_extension( 'date' );
        $this->assert_directive( 'date.timezone', 'Europe/Budapest' );
        $this->assert_extension( 'filter' );
        $this->assert_extension( 'hash' );
        $this->assert_extension( 'openssl' );
        $this->assert_extension( 'pcre' );
        $this->assert_extension( 'SPL' );
        $this->assert_extension( 'zlib' );

        // Common Extensions
        // dpkg -L php7.0-common | sed -n -e 's|^/usr/lib/php/\S\+/\(\S\+\)\.so$|\1|p' | paste -s -d " "
        // ctype iconv gettext tokenizer sockets pdo sysvsem fileinfo posix exif sysvmsg phar ftp calendar sysvshm shmop
        $this->assert_extension( 'ctype' ); // wp-includes/ID3/getid3.lib.php
        $this->assert_extension( 'posix' );
        $this->assert_extension( 'exif' ); // wp-admin/includes/image.php
        $this->assert_extension( 'ftp' );
        $this->assert_extension( 'gettext' ); // _()
        $this->assert_extension( 'iconv' );
        $this->assert_extension( 'mbstring' );
        $this->assert_extension( 'sockets' );
        $this->assert_extension( 'tokenizer' );

        // php7.0-json
        $this->assert_extension( 'json' );
        // php7.0-intl
        $this->assert_extension( 'intl' );
        // php7.0-xml
        // wddx xml simplexml xmlwriter xmlreader dom xsl
        $this->assert_extension( 'xml' );
        $this->assert_extension( 'SimpleXML' );
        $this->assert_extension( 'xmlreader' );
        $this->assert_extension( 'dom' );
        // php7.0-curl
        $this->assert_extension( 'curl' );
        // php7.0-Gd
        $this->assert_extension( 'Gd' );
        // php7.0-mysql
        // mysqlnd mysqli pdo_mysql
        // WP_USE_EXT_MYSQL will use mysqli through mysqlnd (no PDO)
        $this->assert_extension( 'mysqlnd' );
        $this->assert_extension( 'mysqli' );
        // php7.0-opcache
        $this->assert_extension( 'Zend OPcache', 'ext.opcache' );
        $this->assert_directive( 'opcache.restrict_api', '/home/prg123' );
        $this->assert_directive( 'opcache.memory_consumption', '256' );
        $this->assert_directive( 'opcache.interned_strings_buffer', '16' );
        $this->assert_directive( 'opcache.max_accelerated_files', '10000' );

        // Deprecated Extensions
        $this->assert_disabled_extension( 'mcrypt' );
        $this->assert_disabled_extension( 'mysql' );

        // Disabled Extensions
        // calendar fileinfo pcntl PDO pdo_mysql Phar readline
        // shmop sysvmsg(System V messages) sysvsem(System V semaphore) sysvshm(System V shared memory) wddx xmlwriter xsl

        $this->assert_disabled_extension( 'calendar' );
        $this->assert_disabled_extension( 'fileinfo' );
        $this->assert_disabled_extension( 'pcntl' );
        $this->assert_disabled_extension( 'PDO' );
        $this->assert_disabled_extension( 'pdo_mysql' );
        $this->assert_disabled_extension( 'Phar' );
        $this->assert_disabled_extension( 'readline' );
        $this->assert_disabled_extension( 'shmop' );
        $this->assert_disabled_extension( 'sysvmsg' );
        $this->assert_disabled_extension( 'sysvsem' );
        $this->assert_disabled_extension( 'sysvshm' );
        $this->assert_disabled_extension( 'wddx' );
        $this->assert_disabled_extension( 'xmlwriter' );
        $this->assert_disabled_extension( 'xsl' );
        // php7.0-sqlite3
        // pdo_sqlite sqlite3
        $this->assert_disabled_extension( 'pdo_sqlite' );
        $this->assert_disabled_extension( 'sqlite3' );

        // 3rd-party Extensions

        // php7.0-redis
        $this->assert_extension( 'igbinary' );
        $this->assert_extension( 'redis' );

        // Not for WordPress

        // Session
        $this->assert_directive( 'session.gc_maxlifetime', '1440' );
    }

    /**
     * Simple assert.
     *
     * @param $id string       Assert ID
     * @param $expected string Expected value
     * @param $result string   Current value
     */
    private function assert( $id, $expected, $result ) {

        if ( $expected !== $result ) {
            $this->errors[ $id ] = $result;
        }
    }

    /**
     * Assert for a PHP extension.
     *
     * @param $extension_name string Extension name
     * @param $id string             Optional assert ID
     */
    private function assert_extension( $extension_name, $id = '' ) {

        // Automatic ID
        if ( '' === $id ) {
            $id = 'ext.' . $extension_name;
        }
        $this->assert( $id, true, extension_loaded( $extension_name ) );
    }

    /**
     * Negative assert for a PHP extension.
     *
     * @param $extension_name string Extension name
     * @param $id string             Optional assert ID
     */
    private function assert_disabled_extension( $extension_name, $id = '' ) {

        // Automatic ID
        if ( '' === $id ) {
            $id = '!ext.' . $extension_name;
        }
        $this->assert( $id, false, extension_loaded( $extension_name ) );
    }

    /**
     * Assert for a PHP directive.
     *
     * @param $directive_name string Directive name
     * @param $expected string       Expected value
     * @param $id string             Optional assert ID
     */
    private function assert_directive( $directive_name, $expected, $id = '' ) {

        // Automatic ID
        if ( '' === $id ) {
            $id = $directive_name;
        }
        $this->assert( $id, $expected, ini_get( $directive_name ) );
    }
}

Basierend auf der Arbeit von @rarst

7
Szépe Viktor

Wenn Sie auf einfache Weise überprüfen möchten, ob Ihr Server diese Anforderungen erfüllt, gibt es jetzt den praktischen Befehl WP-CLI ext .

wp ext required zeigt alle PHP Erweiterungen Notwendig um WordPress auszuführen, während wp ext recommended Optional Einsen zeigt. wp ext check ist eine Kombination aus beiden Befehlen.

Diese sind nützlich, wenn Sie schnell die Systemanforderungen auf einem neuen Server überprüfen und/oder diese Liste programmgesteuert weiterverarbeiten möchten.

So funktioniert wp ext required:

$ wp ext required
+-----------+-----------+
| extension | installed |
+-----------+-----------+
| curl      | 1         |
| date      | 1         |
| dom       | 1         |
| filter    | 1         |
| ftp       | 1         |
| Gd        | 1         |
| hash      | 1         |
| iconv     | 1         |
| json      | 1         |
| libxml    | 1         |
| mbstring  | 1         |
| mysqli    | 1         |
| openssl   | 1         |
| pcre      | 1         |
| posix     | 1         |
| SimpleXML | 1         |
| sockets   | 1         |
| SPL       | 1         |
| tokenizer | 1         |
| xml       | 1         |
| xmlreader | 1         |
| zlib      | 1         |
+-----------+-----------+
Success: All required extensions are installed
7
swissspidy

Wenn Sie Debian 7 (Debian Wheezy) verwenden, müssen Sie PHP selbst und eine kleine Anzahl von Erweiterungen installieren. Das meiste, was von @Rarst erwähnt wurde, ist bereits in einer der grundlegendsten PHP -Installationen von Debian enthalten.

PHP

Sie haben in Debian Wheezy vier Möglichkeiten: libapache2-mod-php5 , libapache2-mod-php5filter , php5-cgi oder php5-fpm . Ich wähle php5-fpm, aber es hängt alles davon ab, wie Ihr Webserver und PHP interagieren sollen.

MySQL

Sie benötigen auch PHP, um MySQL zu verwenden. Ihre Optionen sind php5-mysql und php5-mysqlnd . php5-mysqlnd ist nativ und im Allgemeinen schneller. Einige könnten eine Alternative wie MariaDB wählen.

Grafikbibliothek Optional

Wenn Sie möchten, dass die Größe Ihrer Bilder geändert wird, können Sie entweder php5-Gd oder php5-imagick installieren. php5-imagick bietet Ihnen eine bessere Qualität und Wordpress verwendet es, wenn es verfügbar ist. Wenn beide installiert sind, wird php5-imagick verwendet. Wenn beides nicht installiert ist, wird die Größe der Bilder nicht geändert (und Wordpress beschwert sich nicht).

HTTPOptional

Wenn Sie php5-curl installieren, wird es verwendet, ist aber nur für eine bessere Leistung erforderlich.


Für Wordpress und die meisten Erweiterungen ist nichts anderes erforderlich, obwohl für einige Erweiterungen möglicherweise andere Anforderungen gelten.

Hier ist die komplette Basis-Installationslinie, die Wordpress alles bietet, was es für eine optimale Leistung benötigt, und nichts, was es nicht tut:

apt-get install php5-fpm php5-mysqlnd php5-imagick php5-curl
3
user55371

Ein kleines "Cheatsheet" bei der Installation von PHP für Wordpress unter Debian:

0. Fügen Sie das Dotdeb-Repository hinzu

Fügen Sie diese beiden Zeilen zu Ihrer /etc/apt/sources.list -Datei hinzu:

deb http://packages.dotdeb.org jessie all
deb-src http://packages.dotdeb.org jessie all

Fügen Sie den GPG-Schlüssel hinzu:

wget https://www.dotdeb.org/dotdeb.gpg
Sudo apt-key add dotdeb.gpg

Aktualisieren Sie die "Paketliste":

Sudo apt-get update

1. Installieren Sie PHP 7:

apt-get install php7.0-common libapache2-mod-php7.0 php7.0-cli

Quelle: http://php.net/manual/en/install.unix.debian.php

2. Liste der Module, die im Paket "php7.0-common" enthalten sind:

/usr/lib/php/20151012/calendar.so
/usr/lib/php/20151012/ctype.so
/usr/lib/php/20151012/exif.so
/usr/lib/php/20151012/fileinfo.so
/usr/lib/php/20151012/ftp.so
/usr/lib/php/20151012/gettext.so
/usr/lib/php/20151012/iconv.so
/usr/lib/php/20151012/pdo.so
/usr/lib/php/20151012/phar.so
/usr/lib/php/20151012/posix.so
/usr/lib/php/20151012/shmop.so
/usr/lib/php/20151012/sockets.so
/usr/lib/php/20151012/sysvmsg.so
/usr/lib/php/20151012/sysvsem.so
/usr/lib/php/20151012/sysvshm.so
/usr/lib/php/20151012/tokenizer.so

Quelle: https://packages.debian.org/sid/AMD64/php7.0-common/filelist

3. Um die zusätzlichen Module zu installieren, die von WordPress benötigt/empfohlen werden:

apt-get install php7.0-curl php7.0-Gd php7.0-mbstring php7.0-mcrypt php7.0-pspell php7.0-Zip

Quelle: https://wordpress.stackexchange.com/a/42141/107878

4. Ich konnte folgendes auf debian nicht finden:

Openssl
Path Info Check
Zlib

5. "apt-cache search php7" gibt zurück:

php7.0 - server-side, HTML-embedded scripting language (metapackage)
php7.0-apcu - APC User Cache for PHP
php7.0-apcu-bc - APCu Backwards Compatibility Module
php7.0-bcmath - Bcmath module for PHP
php7.0-bz2 - bzip2 module for PHP
php7.0-cgi - server-side, HTML-embedded scripting language (CGI binary)
php7.0-cli - command-line interpreter for the PHP scripting language
php7.0-common - documentation, examples and common module for PHP
php7.0-curl - CURL module for PHP
php7.0-dba - DBA module for PHP
php7.0-dbg - Debug symbols for PHP7.0
php7.0-dev - Files for PHP7.0 module development
php7.0-enchant - Enchant module for PHP
php7.0-fpm - server-side, HTML-embedded scripting language (FPM-CGI binary)
php7.0-Gd - Gd module for PHP
php7.0-geoip - GeoIP module for PHP
php7.0-gmp - GMP module for PHP
php7.0-igbinary - igbinary serializer for PHP
php7.0-imagick - Provides a wrapper to the ImageMagick library
php7.0-imap - IMAP module for PHP
php7.0-interbase - Interbase module for PHP
php7.0-intl - Internationalisation module for PHP
php7.0-json - JSON module for PHP
php7.0-ldap - LDAP module for PHP
php7.0-mbstring - MBSTRING module for PHP
php7.0-mcrypt - libmcrypt module for PHP
php7.0-memcached - memcached extension module for PHP, uses libmemcached
php7.0-mongodb - MongoDB driver for PHP
php7.0-msgpack - MessagePack serializer for PHP
php7.0-mysql - MySQL module for PHP
php7.0-odbc - ODBC module for PHP
php7.0-opcache - Zend OpCache module for PHP
php7.0-pgsql - PostgreSQL module for PHP
php7.0-phpdbg - server-side, HTML-embedded scripting language (PHPDBG binary)
php7.0-pspell - pspell module for PHP
php7.0-readline - readline module for PHP
php7.0-recode - recode module for PHP
php7.0-redis - PHP extension for interfacing with Redis
php7.0-snmp - SNMP module for PHP
php7.0-soap - SOAP module for PHP
php7.0-sqlite3 - SQLite3 module for PHP
php7.0-ssh2 - Bindings for the libssh2 library
php7.0-sybase - Sybase module for PHP
php7.0-tidy - tidy module for PHP
php7.0-xdebug - Xdebug Module for PHP
php7.0-xml - DOM, SimpleXML, WDDX, XML, and XSL module for PHP
php7.0-xmlrpc - XMLRPC-EPI module for PHP
php7.0-xsl - XSL module for PHP (dummy)
php7.0-Zip - Zip module for PHP

Referenz: https://packages.debian.org/source/sid/php7.0

1
Tadej

Das WordPress-Handbuch listet nun die empfohlenen PHP Module auf:

Der WordPress-Kern verwendet PHP -Erweiterungen. Wenn die bevorzugte Erweiterung fehlt, muss WordPress entweder mehr Arbeit leisten, um die Aufgabe zu erledigen, bei der das Modul hilft, oder im schlimmsten Fall wird es die Funktionalität entfernen. Daher werden die unten aufgeführten PHP -Erweiterungen empfohlen.

  • bcmath - Wird verwendet, um die Leistung von mathematischen Berechnungen zu verbessern.
  • curl - Führt Remote-Anforderungsvorgänge aus.
  • exif - Arbeitet mit Metadaten, die in Bildern gespeichert sind.
  • filter - Wird zum sicheren Filtern von Benutzereingaben verwendet.
  • fileinfo - Dient zum Erkennen des Mimetyps von Dateiuploads
  • mod_xml - Wird zum Generieren von XML verwendet, z. B. für eine XML-Sitemap. Beachten Sie, dass mod_xml ein Apache-Modul ist, keine PHP -Erweiterung, sondern zur Information aufgeführt wird.
  • mysqli - Stellt eine Verbindung zu MySQL für Datenbankinteraktionen her.
  • libsodium - Erzeugt zufällige Bytes.
  • openssl - Erlaubt SSL-basierte Verbindungen zu anderen Hosts.
  • pcre - Erhöht die Leistung des Mustervergleichs bei der Codesuche.
  • imagick - Bietet eine bessere Bildqualität für das Hochladen von Medien. Siehe WP_Image_Editor kommt! für Details. Intelligentere Bildgrößenänderung (für kleinere Bilder) und PDF Unterstützung für Miniaturansichten, wenn Ghost Script ebenfalls verfügbar ist.
  • xml - Wird für XML-Parsing verwendet, z. B. von einer Site eines Drittanbieters.

Außerdem werden die folgenden PHP Erweiterungen als optional aufgeführt:

  • Gd - Wenn Imagick nicht installiert ist, wird die Gd-Grafikbibliothek als funktionell eingeschränkter Fallback für die Bildbearbeitung verwendet.
  • mcrypt - Erzeugt zufällige Bytes, wenn libsodium nicht verfügbar ist.
  • xmlreader - Wird für das XML-Parsing verwendet.
  • zlib - Gzip-Komprimierung und -Dekomprimierung.
1
TEKFused

sie benötigen die Erweiterungen mysqli, pdo und Gd. und manchmal xml-rpc.

Ich habe WP mit der systemeigenen mysqlnd-Erweiterung für eine Weile ausgeführt, es ist ziemlich ordentlich. Wenn Sie also sehen möchten, was mit der Datenbank in dieser bestimmten Anfrage los ist, können Sie dies tun.

Zip als Erweiterung wird nicht benötigt, die meisten Programme rufen die ausführbare Zip-Datei des Systems auf.

0
Vid Luther