WP'nin ihtiyaç duyduğu ve / veya kullandığı PHP uzantıları ve kütüphaneleri nelerdir?


79

Codex gevşek bir şekilde yalnızca sunucu gereksinimlerinde PHP versiyonundan bahseder , ancak PHP farklı parçalar dahil / hariç çok geniş bir aralıkta yapılandırılabilir.

Uzantılar / kütüphaneler nelerdir:

  1. WP'nin çalışması için neler gerekli? MySQL ...
  2. belirli fonksiyonlar için gerekli olan? GD? ...
  3. Özel fonksiyonların en iyi şekilde çalışması için tercih edilir mi? cURL ...
  4. Eklentiler tarafından yaygın olarak kullanılır? Zip ...

Sitenizde bir SSL hatası olduğunu biliyor musunuz ( queryposts.com )?
Ben En Aptal

@IamtheMostStupidPerson teşekkür ediyor, otomatik sertifika yenileme işlemi bir sebepten ötürü başarısız oldu, şimdi düzeltilmesi gerekiyor.
Rarst

Endişeye gerek yok, en Şifrele edelim. değil mi? Otomatik olarak yenilendiğini düşündüm ... Durumunuz olarak otomatik olarak yenilenmezse, ne yapabiliriz?
Ben En Aptal

@IamtheMostStupidPerson hosting desteği onu sıfırladı (entegrasyonları ile kuruldu), normalde benim için otomatik olarak yeniliyor.
Rarst

Yanıtlar:


90

Buna biraz daha fazla düşünce verdim ve WP kod tabanının verilen büyüklüğü (birlikte verilen kütüphaneler dahil) bu tür bir listeyi elle derlemeniz çok gerçekçi görünmüyor (ve her yeni sürüm için tekrar ediyorum - meh).

Uygun statik kod analiz aracı - PHP_CompatInfo ve çekirdek tarafından kullanılan uzantı raporları takip edilerek oluşturulan bazı kontrol işlemlerinden sonra baktım (sürüm 3.3.1 tarandı):

  • cURL - 127 kullanır ( libcurl gerektirir )

    • HTTP API (sınıf WP_Http_curl)
    • url_is_accessable_via_ssl()
    • SimplePie (sınıfla geçersiz kılınır WP_SimplePie_File)
    • GoogleSpell (TinyMCE paketinden kullanılmıyor mu?)
  • Tarih / Saat - 367 kullanır

  • DOM - 6 kullanır ( libxml gerektirir )

    • iis7_rewrite_rule_exists()
    • iis7_delete_rewrite_rule()
    • iis7_add_rewrite_rule()
    • saveDomDocument()
  • POSIX Regex - 23 kullanır

  • Filtre - 2 kullanır

    • sınıf PHPMailer->ValidateAddress()(isteğe bağlı)
  • FTP - 72 kullanır

    • sınıf ftp_base
    • sınıf ftp( saf ve soket versiyonları)
    • sınıf WP_Filesystem_FTPext
    • sınıf WP_Filesystem_ftpsockets
  • GD - 56 kullanır

    • wp-admin\includes\image-edit.php
    • wp-admin\includes\image.php
    • wp-includes\media.php
  • Hash - 6 kullanır

    • wp-includes\pluggable.phpçoklu kullanım (isteğe bağlı - geri dönüş wp-includes\compat.php)
  • iconv - 5 kullanım

    • sınıf SimplePie(isteğe bağlı)
    • wp_check_invalid_utf8() (isteğe bağlı)
    • wp-mail.php (isteğe bağlı)
  • JSON - 20 kullanır

    • isteğe bağlı, geri dönüşler wp-includes/compat.php
  • libxml - 4 kullanır

    • sınıf WP_oEmbed->_parse_xml()(isteğe bağlı)
    • SimplePie
  • Çok Baytlı Dize - 29 kullanır

    • bazı geri dönüşler wp-includes/compat.php
  • MySQL - 60 kullanır

    • sınıf wpdb
    • sınıfSimplePie_Cache ( sınıfla geçersiz kılınır WP_Feed_Cache)
  • OpenSSL - 4 kullanır

    • sınıf PHPMailer
  • PCRE - 743 kullanır

  • SimpleXML - 1 kullanır

    • sınıf WP_oEmbed(isteğe bağlı görünüyor)
  • Soketler - 64 kullanım

    • sınıf ftp( socketsuygulama)
  • SPL - 3 kullanır

  • Tokenizer - 3 kullanır

    • wp_doc_link_parse() (isteğe bağlı)
  • XML Ayrıştırıcı - 89 kullanır

  • XMLReader - 1 kullanır

    • SimplePie (isteğe bağlı görünüyor)
  • Zlib - 30 kullanır


4
Harika kaynak Neyse ki, yukarıdaki uzantı ve kütüphanelerin çoğu, varsayılan olarak PHP 5.2.4 ve üzeri sürümlerle derlenmiştir.
Chris_O

Varsayılan olarak takip edilen sürece @Chris_O ... Çekirdek ekip tarafından birkaç kez vahşi ortamda bazı weeeeird PHP yapılandırmaları olduğu söylendi. Kendimden bu soruyu soran şey, VPS'nin iş yerinizi yeni bir barındırma sağlayıcısından satın alması ve beklenmedik bir şekilde, bazı tipik uzantılar eksikken çok az bir yapılandırmaya sahip olmasıdır. Bu uzantıların kontrol listesiyle destek sağlamak, ardından tek tek keşfedilmelerini istemek ve istemek daha uygun olacaktır.
Rarst

Hangi lib temaları ve eklentileri açmak için kullanılır?
jgraup

1
@jgraup ZipArchive veya PclZip bkz ilgili unzip fonksiyonları queryposts.com/?s=unzip_file
Rarst

1
V4.7 ve yeni yerel PDF küçük resmi / önizlemesi ile sunucunuzun Imagick, ImageMagick ve Ghostscript desteğine ihtiyacı var.
j08691

26

Bunun cevabı, bildiğim kadarıyla, karmaşık ve çok uzun olabilir, sunucular ve işletim sistemleri (IIS, Apache) arasında da bazı farklılıklar olacaktır. Aşağıdaki listenin TAM bir liste olduğunu söyleyemem, gerekli olduğunu bildiğim bunlardan bazıları:

  • Curl ve CurlSSL - GEREKLİ olduğundan emin değilim, ancak varsa WordPress kodunun çoğu onu kullanır. Ancak birçok eklenti bunu gerektirir ve / veya onsuz sınırlı işlevlere sahip olmasını gerektirir .

  • Exif - WordPress'in medya işleyicisinin Exif verilerini resimlerden çekmesini sağlar.

  • Gettext - .po .mo çeviri yerelleştirme uluslararasılaştırma ..

  • FTP - FTP üzerinden eklenti ve WordPress yükseltmeleri yapmak için kullanılır.

  • GD - Girişe gerek yok, değil mi?

  • Iconv - karakter, postadan RSS ayrıştırmaya kadar her şey için dönüşümleri ayarlar.

  • Mbregex ve Mbstring - adı oldukça açıklayıcı - her yerde kullanılan işlevleri sağlar :-)

  • Mcrypt - WordPress için gerekli değildir, ancak birçok eklentiye ihtiyaç vardır.

  • Mime Magic - Artık wordpress'te kullanımdan kaldırıldı - fakat yine de geri uyumluluk için iyi.

  • * Sistemin Mysql ve Mysql * - hepimiz bunun ne olduğunu ve neden gerekli olduğunu biliyoruz, hayır?

  • Openssl - Bu kütüphane, SSL ile şifrelenmiş işlem bağlantılarını yönetmek için kullanılır, çünkü WordPress herhangi bir SSL (https) şifreli konumuna bağlanabilir.

  • POSIX - WordPress'in dosya izinlerini ve sahipliklerini uygun şekilde korumasını sağlamak için kullanılır.

  • Yol Bilgisi Kontrolü - bazı kalıcı bağlantı ayarları.

  • Pspell - TinyMCE için yetenekleri yazım denetimi.

  • Soketler - WordPress’te AKA SMTP ve POP ile FTP bağlantılarını ve posta işlemlerini yönetme.

  • Zip - GEREKLİ olup olmadığından emin değil - ancak bu platformlar arası uyumlu zip dosyası oluşturma ve çıkarma sınıfı, eğer varsa wordpress tarafından kullanılacak.

  • Zlib - Birçok durumda kullanılır. örnek - js ve css dosyaları sıkıştırması. Yine, GEREKLİ ancak gerekli olup olmadığından emin değil .

Yukarıda belirtildiği gibi - bu hiçbir şekilde bir TAM liste değildir - Yaklaşık bir yıl önce derlenmiştir - ve bazı güncellemelere ihtiyaç duyabilir. Bu işlevlerin çoğu tam olarak GEREKLİ DEĞİL, ama GELİŞMİŞ . Birçok durumda wordpress eğer mevcutsa bir fonksiyon kullanır ve eğer olmazsa görevi görmezden gelir. Bunun için iyi bir örnek GD kütüphanesinin olmaması, wordpress'in çalışmasını engellemeyecek, fakat yüklenen görüntüleri kesmeyecek, yeniden boyutlandıramayacak veya değiştirmeyecek - böylece orjinali bırakacak (ve "boyut" seçeneğini "insert" gönderilecek resim "function) ..

Bir yan not olarak - belki de bu sorunun muhtemelen serverfault.com'da burada olduğundan daha doğru / güncellenmiş cevaplar alacağını söyleyebilirim ...


Bu neden Wordpress web sitesinde bulunabilecek bir yer değil?
Tadej

13

( Bunun bir cevap olması amaçlanmamıştır. Yalnızca bazı yararlı bilgiler. Bu bilginin yararlı olmadığını düşünüyorsanız, bana bildirin, sadece silerim.)

Paketler açısından konuşmanın yeniler için daha kolay olacağını düşünüyorum, ancak paketler sistemden sisteme değişiklik gösterdiğinden hepsini kapsaması zor.

Debian (& Debian-tabanlı dağıtımlar) konusunda deneyimim olduğu için, bu belirli bilgileri paylaşmak istiyorum:

  • php5-cli
  • php5-dev
  • php5-fpm
  • php5-cgi
  • php5-mysql
  • php5-xmlrpc
  • php5-curl
  • php5-gd
  • php-apc (gerekli değildir, ancak önerilir)
  • php-armut
  • php5-imap
  • php5-mcrypt
  • php5-Pspell

Yukarıda belirtilen paketler, diğer cevaplarda belirtilen tüm uzantıları / kütüphaneleri / modülleri kurar; tümü, WordPress tarafından artık gerekmeyen Mime Magic hariç .

Sunucunuzun WordPress ile% 100 uyumlu olduğundan emin olmanın başka bir yolu da yönetilen barındırma şirketlerinin önceden yüklenmiş olarak geldikleri paketleri kontrol etmektir . Uyumsuzluklarla ilgili müşteri şikayetleri konusunda uzun yıllara dayanan deneyime sahip olduklarından daha iyi anlarlar.

Hostgator durumunda, önceden yükledikleri PHP modülleri şunları içerir (muhtemelen sadece çoğuna ihtiyacınız olacak ancak hepsine ihtiyacınız yoktur):

Hostgator tarafından önceden yüklenmiş PHP modülleri

Media Temple, phpinfo();yapılandırmalarını kontrol etmeniz için bir dosya sağlar . Karşılaştırma amacıyla da kullanışlıdır.


WP'nin ne için php5-cli, php5-dev, (php5-fpm && php5-cgi), php5-arm, php5-imap ve php5-pspell'a ihtiyacı var? Yaklaşımınız sadece her şeyi kurmak gibi görünüyor ve bu kötü bir yaklaşım. Eğer kurulumunuz üzerinde kontrol sahibi iseniz, paylaşılan barındırma ortamlarını taklit etmeniz gerektiği fikri. Ayrıca, PHP'yi (FastCGI veya CGI) çalıştırmak için bir yol seçmelisiniz, ikisini birden değil.

Versiyonun yanında (php5), bu aslında en iyi cevabıdır. Soru 'ne için', sadece 'hangi' modüllerini ifade etmez. Oy verildi!
GerardJP

8

Sunucunuzun bu gereksinimleri karşılayıp karşılamadığını doğrulamanın kolay bir yolunu istiyorsanız, bunu yapmak için artık kullanışlı bir WP-CLI ext komutu var .

wp ext requiredisteğe bağlı olanları gösterirken WordPress'i çalıştırmak için gereken tüm PHP uzantılarını wp ext recommendedgösterir . her iki komutun bir birleşimidir.wp ext check

Bunlar, yeni bir sunucudaki sistem gereksinimlerini kontrol etmek için hızlı bir yönteme ihtiyaç duyduğunuzda ve / veya bu listeyi programlı olarak daha fazla işlemek istediğinizde kullanışlı olur.

İşte nasıl wp ext requiredçalışıyor:

$ 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

WordPress ortam denetleyicimi geliştirdim. Basit bir sınıftır, web SAPI veya CLI'de çalışır. Bu tutulan sürüm 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 <viktor@szepe.net>
 */

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 ) );
    }
}

@Rarst'ın çalışmasına dayanarak


3

Debian 7 (Debian Wheezy) kullanıyorsanız, PHP'yi ve az sayıda uzantı yüklemeniz gerekir. @Rarst tarafından bahsedilenlerin çoğu zaten Debian'ın en temel PHP kurulumlarından birine dahil edilmiştir.

PHP

Debian Wheezy'de dört seçeneğiniz vardır: libapache2-mod-php5 , libapache2-mod-php5filter , php5-cgi veya php5-fpm . Php5-fpm'yi seçiyorum, ancak hepsi web sunucunuzun ve PHP'nin nasıl etkileşimde bulunmasını istediğinize bağlı.

MySQL

Ayrıca MySQL kullanmak için PHP'ye ihtiyacınız var. Seçenekleriniz php5-mysql ve php5-mysqlnd'dir . php5-mysqlnd yereldir ve genellikle daha hızlıdır. Bazıları MariaDB gibi bir alternatif seçebilir.

Grafik Kütüphanesi İsteğe Bağlı

Resimlerinizin yeniden boyutlandırılmasını istiyorsanız, php5-gd veya php5-imagick'i yükleyebilirsiniz . php5-imagick size daha iyi kalite verecek ve eğer mevcutsa Wordpress kullanacaktır. Her ikisi de kurulursa, php5-imagick kullanılacaktır. Hiçbiri kurulmazsa, görüntüler yeniden boyutlandırılmaz (ve Wordpress şikayet etmez).

HTTP İsteğe Bağlı

Php5-curl yüklerseniz kullanılacaktır, ancak daha iyi performans dışında hiçbir şey için gerekli değildir.


Wordpress ve çoğu uzantı için başka hiçbir şeye gerek yoktur, ancak bazı uzantıların başka gereksinimleri de olabilir.

İşte Wordpress'e optimum performans için ihtiyaç duyduğu her şeyi ve hiçbir şey vermeyen tam temel kurulum satırı:

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

2

WordPress 5.2'den bu yana, eksik modülleri bildiren yerleşik bir özellik bulunduğundan bahsetmeye değer. Araçlar> Site Sağlığı bölümünde bulun.


1

Debian'da Wordpress için PHP kurarken küçük bir "kopya sayfası":

0. dotdeb deposunu ekleyin

Bu iki satırı /etc/apt/sources.listdosyanıza ekleyin :

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

GPG anahtarını ekleyin:

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

"Paket listesini" güncelle:

sudo apt-get update

1. PHP 7'yi yükleyin:

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

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

2. "php7.0-common" paketine dahil olan modüllerin listesi:

/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

Kaynak: https://packages.debian.org/sid/amd64/php7.0-common/filelist

3. WordPress tarafından önerilen / önerilen ek modülleri kurmak için:

apt-get install php7.0-curl php7.0-gd php7.0-mbstring php7.0-mcrypt php7.0-pspell php7.0-zip

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

4. Debian'da aşağıdakileri bulamadım:

Openssl
Path Info Check
Zlib

5. "apt-cache search php7" döndürür:

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

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


1

WordPress el kitabı şimdi önerilen PHP modülleri listelenmektedir:

WordPress çekirdeği PHP uzantılarını kullanır. Tercih edilen uzantı eksikse, WordPress ya modülün yardım ettiği görevi yapmak için daha fazla iş yapmak zorunda kalır ya da en kötü durumda, işlevselliği kaldırır. Bu nedenle aşağıda listelenen PHP uzantıları önerilir.

  • bcmath - Matematik hesaplamaların performansını iyileştirmek için kullanılır.
  • curl - Uzak istek işlemlerini gerçekleştirir.
  • exif - Görüntülerde depolanan meta verilerle çalışır.
  • filtre - Kullanıcı girişini güvenli bir şekilde filtrelemek için kullanılır.
  • fileinfo - Dosya yüklemelerinin taklit türünü tespit etmek için kullanılır
  • mod_xml - Bir XML site haritası gibi, XML oluşturmak için kullanılır. Mod_xml'nin bir PHP uzantısı değil Apache modülü olduğunu, ancak farkındalık için listelendiğini unutmayın.
  • mysqli - Veri tabanı etkileşimleri için MySQL'e bağlanır.
  • libsodium - Rastgele baytlar oluşturur.
  • openssl - Diğer ana bilgisayarlarla SSL tabanlı bağlantılara izin verir.
  • pcre - Kod aramalarında kalıp eşleştirme performansını artırır.
  • imagick - Medya yüklemeleri için daha iyi görüntü kalitesi sağlar. WP_Image_Editor geliyor! detaylar için. Ghost Script de mevcut olduğunda daha akıllı görüntü yeniden boyutlandırma (daha küçük görüntüler için) ve PDF küçük resim desteği.
  • xml - Üçüncü taraf bir siteden olduğu gibi XML ayrıştırma için kullanılır.

Ayrıca, isteğe bağlı olarak aşağıdaki PHP uzantılarını listeler:

  • gd - Imagick kurulmamışsa, GD Grafik Kitaplığı görüntü işleme için işlevsel olarak sınırlı bir geri dönüş olarak kullanılır.
  • mcrypt - Libsodium kullanılamadığında rastgele baytlar oluşturur.
  • xmlreader - XML ​​ayrıştırma için kullanılır.
  • zlib - Gzip sıkıştırma ve açma.

Huh, ne yapmalıyım acaba mod_xmlçekirdek ne XML site haritası uygulayamıyor ne de belirli bir web sunucusu üzerinde çalışmaya bağlı.
Rarst

0

mysqli, pdo ve gd eklentilerine ihtiyacınız var. ve bazen xml-rpc.

Bir süredir mysqlnd yerel uzantısı ile WP çalıştırıyorum, oldukça zarif. İçinde yansıma maddeleri vardır, bu nedenle db'de bu belirli istekte neler olup bittiğini görmek istiyorsanız, bunu yapabilirsiniz.

Bir uzantı olarak zip gerekli değildir, çoğu program sistem zip çalıştırılabilir çağırır.


2
WP, PDO katmanını kullanmıyor. Bunu yapmanıza olanak sağlayan eklentiler olabilir, ancak
WP'nin
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.