mirror of
https://github.com/php/doc-fr.git
synced 2026-03-23 22:52:18 +01:00
333 lines
12 KiB
XML
333 lines
12 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- EN-Revision: 83286b1ab69b6857e0a4e5d321ff6f2fb75bc253 Maintainer: Fan2Shrek Status: ready -->
|
|
<!-- Reviewed: yes -->
|
|
<section xml:id="mongodb.installation" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
&reftitle.install;
|
|
|
|
<section xml:id="mongodb.installation.pie">
|
|
<title>Installer l'extension de MongoDB PHP avec PIE</title>
|
|
|
|
&pecl.moving.to.pie;
|
|
|
|
<para>
|
|
Pour installer l'extension MongoDB avec PIE, exécutez la commande suivante :
|
|
<programlisting role="shell">
|
|
<![CDATA[
|
|
pie install mongodb/mongodb-extension
|
|
]]>
|
|
</programlisting>
|
|
</para>
|
|
|
|
</section>
|
|
|
|
|
|
<section xml:id="mongodb.installation.pecl">
|
|
<title>Installer l'extension de MongoDB PHP avec PECL</title>
|
|
|
|
<para>
|
|
&pecl.info;
|
|
<link xlink:href="&url.pecl.package;mongodb">&url.pecl.package;mongodb</link>
|
|
</para>
|
|
|
|
<para>
|
|
Linux, Unix et les utilisateurs de macOS peuvent exécuter la commande suivante pour
|
|
installer l'extension :
|
|
<programlisting role="shell">
|
|
<![CDATA[
|
|
$ sudo pecl install mongodb
|
|
]]>
|
|
</programlisting>
|
|
</para>
|
|
|
|
<para>
|
|
Sur les systèmes avec plusieurs versions de PHP installées (par exemple, macOS par défaut,
|
|
Homebrew, <link xlink:href="&url.xampp;">XAMPP</link>), chaque version de PHP
|
|
aura sa propre commande <link linkend="install.pecl">pecl</link>
|
|
et fichier &php.ini;. De plus, chaque environnement PHP (par exemple
|
|
CLI, web) peut utiliser des fichiers &php.ini; séparés.
|
|
</para>
|
|
|
|
<para>
|
|
Depuis la version 1.17.0 de l'extension, PECL demandera diverses options de
|
|
<literal>configurations</literal>. Pour installer l'extension avec les options par défaut
|
|
dans un script non interactif, une entrée vide peut être envoyée à
|
|
<literal>pecl install</literal> en utilisant la commande <literal>yes</literal> :
|
|
<programlisting role="shell">
|
|
<![CDATA[
|
|
$ yes '' | sudo pecl install mongodb
|
|
]]>
|
|
</programlisting>
|
|
</para>
|
|
|
|
<para>
|
|
Une liste complète des options <literal>configure</literal> supportées peut être
|
|
trouvée dans le fichier <literal>package.xml</literal> inclus dans le paquet PECL.
|
|
Pour installer l'extension avec des options de <literal>configurations</literal> spécifiques
|
|
dans un script non interactif, l'option
|
|
<literal>--configureoptions</literal> pour
|
|
<literal>pecl install</literal> peut être utilisée :
|
|
<programlisting role="shell">
|
|
<![CDATA[
|
|
$ sudo pecl install --configureoptions='with-mongodb-system-libs="yes" enable-mongodb-developer-flags="no"' mongodb
|
|
]]>
|
|
</programlisting>
|
|
</para>
|
|
|
|
<para>
|
|
Par défaut l'installation de l'extension via PECL utilisera les versions incluses de
|
|
<link xlink:href="&url.mongodb.libbson;">libbson</link>,
|
|
<link xlink:href="&url.mongodb.libmongoc;">libmongoc</link>, et
|
|
<link xlink:href="&url.mongodb.libmongocrypt;">libmongocrypt</link> et essayera automatiquement
|
|
de configurer.
|
|
</para>
|
|
|
|
<note>
|
|
<simpara>
|
|
Si le processus de construction échoue à trouver une bibliothèque SSL, vérifiez que les
|
|
paquets de développement (par exemple <literal>libssl-dev</literal>) et
|
|
<link xlink:href="&url.mongodb.wiki.pkg-config;">pkg-config</link> sont tous deux
|
|
installés. Si cela ne résout pas le problème, envisagez d'utiliser le
|
|
processus
|
|
<link linkend="mongodb.installation.manual">d'installation manuel</link>.
|
|
</simpara>
|
|
</note>
|
|
|
|
<para>
|
|
Pour finir, ajoutez la ligne suivante au fichier &php.ini; pour chaque environnement
|
|
qui aura besoin d'utiliser l'extension :
|
|
<programlisting role="ini">
|
|
<![CDATA[
|
|
extension=mongodb.so
|
|
]]>
|
|
</programlisting>
|
|
</para>
|
|
</section>
|
|
|
|
<section xml:id="mongodb.installation.homebrew">
|
|
<title>Installer l'extension de MongoDB PHP sur macOS avec Homebrew</title>
|
|
|
|
<para>
|
|
<link xlink:href="&url.brew.1.5.0;">Homebrew 1.5.0</link>
|
|
a déprécié le <link xlink:href="&url.mac.homebrew;">tap Homebrew/php</link>
|
|
et a supprimé les formules pour les extensions PHP individuelles. À l'avenir, les utilisateurs
|
|
de macOS sont invités à installer la formule
|
|
<link xlink:href="&url.brew.php;">php</link> et à suivre les instructions
|
|
<link linkend="mongodb.installation.pecl">d'installation standard de PECL</link>
|
|
en utilisant la commande <link linkend="install.pecl">pecl</link>
|
|
fournie par l'installation PHP Homebrew.
|
|
</para>
|
|
<para>
|
|
Sinon, le
|
|
<link xlink:href="https://github.com/shivammathur/homebrew-extensions">tap shivammathur/extensions</link>
|
|
fourni des formules pour les extensions PHP individuelles. Par exemple, pour installer
|
|
l'extension pour PHP 8.4, exécutez :
|
|
<programlisting role="shell">
|
|
<![CDATA[
|
|
$ brew install shivammathur/extensions/mongodb@8.4
|
|
]]>
|
|
</programlisting>
|
|
Il est a noter que seule la dernière version de l'extension est disponible dans brew.
|
|
</para>
|
|
<note>
|
|
<title>Installer les dépendances requises</title>
|
|
<para>
|
|
Pour garantir que le support SSL peut être configuré correctement, il faut s'assurer que les
|
|
formules <literal>openssl</literal> et <literal>pkgconf</literal> sont
|
|
installées. Si l'un de ces paquets est manquant, l'extension sera compilée
|
|
avec Secure Transport, ce qui peut entraîner des problèmes de compatibilité.
|
|
</para>
|
|
</note>
|
|
</section>
|
|
|
|
<section xml:id="mongodb.installation.windows">
|
|
<title>Installer l'extension de MongoDB PHP sur Windows</title>
|
|
|
|
<para>
|
|
Les binaires précompilés sont attachés aux
|
|
<link xlink:href="&url.mongodb.github.new;/releases/">versions Github</link>
|
|
du projet. Les archives sont publiées pour diverses combinaisons de version PHP,
|
|
de sécurité des threads (TS ou NTS) et d'architecture (x86 ou x64). Déterminez
|
|
l'archive correcte pour l'environnement PHP et extrayez le fichier
|
|
<filename>php_mongodb.dll</filename> dans le répertoire d'extension ("ext" par défaut).
|
|
</para>
|
|
|
|
<para>
|
|
Ajouter la ligne suivante au fichier &php.ini; pour chaque environnement qui aura
|
|
besoin d'utiliser l'extension :
|
|
<programlisting role="ini">
|
|
<![CDATA[
|
|
extension=php_mongodb.dll
|
|
]]>
|
|
</programlisting>
|
|
</para>
|
|
|
|
<para>
|
|
L'échec de sélection du binaire correct entraînera une erreur lors de la tentative
|
|
de chargement de l'extension DLL à l'exécution :
|
|
<programlisting role="txt">
|
|
<![CDATA[
|
|
PHP Warning: PHP Startup: Unable to load dynamic library 'mongodb'
|
|
]]>
|
|
</programlisting>
|
|
</para>
|
|
|
|
<para>
|
|
Il faut s'assurer que la DLL téléchargée correspond aux propriétés d'exécution PHP
|
|
suivantes :
|
|
<simplelist>
|
|
<member>Version de PHP(<constant>PHP_VERSION</constant>)</member>
|
|
<member>Sécurité des threads (<constant>PHP_ZTS</constant>)</member>
|
|
<member>Architecture (<constant>PHP_INT_SIZE</constant>)</member>
|
|
</simplelist>
|
|
</para>
|
|
|
|
<para>
|
|
En plus des constantes mentionnées ci-dessus, ces propriétés peuvent également être
|
|
déduites de <function>phpinfo</function>. Si un système a plusieurs exécutions PHP
|
|
installées, vérifiez que la sortie de <function>phpinfo</function> est pour
|
|
l'environnement correct.
|
|
</para>
|
|
|
|
<note>
|
|
<title>Dépendances additionnelles DLL pour les utilisateurs Windows</title>
|
|
<para>
|
|
&ext.windows.path.dll;
|
|
<filename>libsasl.dll</filename>
|
|
</para>
|
|
</note>
|
|
</section>
|
|
|
|
<section xml:id="mongodb.installation.manual">
|
|
<title>Installation manuelle de l'extension de MongoDB PHP</title>
|
|
|
|
<para>
|
|
Pour les développeurs et les utilisateurs intéressés par les dernières corrections de bogues,
|
|
l'extension peut être compilée à partir du dernier code source sur
|
|
<link xlink:href="&url.mongodb.github.new;">Github</link>. Exécuter les commandes suivantes
|
|
pour cloner et construire le projet :
|
|
<programlisting role="shell">
|
|
<![CDATA[
|
|
$ git clone https://github.com/mongodb/mongo-php-driver.git
|
|
$ cd mongo-php-driver
|
|
$ git submodule update --init
|
|
$ phpize
|
|
$ ./configure
|
|
$ make all
|
|
$ sudo make install
|
|
]]>
|
|
</programlisting>
|
|
</para>
|
|
|
|
<para>
|
|
Sur les systèmes avec plusieurs versions de PHP installées (par exemple, macOS par défaut,
|
|
Homebrew, <link xlink:href="&url.xampp;">XAMPP</link>), chaque version de PHP
|
|
aura sa propre commande <link linkend="install.pecl.phpize">phpize</link>
|
|
et fichier &php.ini;. De plus, chaque environnement PHP (par exemple
|
|
CLI, web) peut utiliser des fichiers &php.ini; séparés.
|
|
</para>
|
|
|
|
<para>
|
|
Par défaut, l'extension utilisera les versions incluses de
|
|
<link xlink:href="&url.mongodb.libbson;">libbson</link>,
|
|
<link xlink:href="&url.mongodb.libmongoc;">libmongoc</link>, et
|
|
<link xlink:href="&url.mongodb.libmongocrypt;">libmongocrypt</link> et
|
|
essayera de configurer automatiquement. Si ces bibliothèques sont déjà
|
|
installées en tant que bibliothèques système, l'extension peut les utiliser en
|
|
spécifiant <literal>--with-mongodb-system-libs=yes</literal> comme option à
|
|
<literal>configure</literal>.
|
|
</para>
|
|
|
|
<para>
|
|
Pour une liste complète des options <literal>configure</literal>, exécutez
|
|
<command>configure --help</command>.
|
|
</para>
|
|
|
|
<para>
|
|
Lorsqu'on utilise les versions groupées de libmongoc et libmongocrypt,
|
|
l'extension tentera également de sélectionner une bibliothèque SSL selon
|
|
l'option de <literal>configuration</literal> <literal>--with-mongodb-ssl</literal>.
|
|
À partir de la version 1.17.0 de l'extension, OpenSSL est toujours préféré par défaut.
|
|
Auparavant, Secure Transport était le défaut sur macOS et OpenSSL était le défaut
|
|
sur toutes les autres plates-formes.
|
|
</para>
|
|
|
|
<note>
|
|
<para>
|
|
Si le processus de construction échoue à trouver une bibliothèque SSL, vérifiez que les
|
|
paquets de développement (par exemple <literal>libssl-dev</literal>) et
|
|
<link xlink:href="&url.mongodb.wiki.pkg-config;">pkg-config</link> sont tous deux
|
|
installés.
|
|
</para>
|
|
|
|
<para>
|
|
Lorsqu'on utilise Homebrew sur macOS, il est courant qu'un système ait
|
|
plusieurs versions d'OpenSSL installées. Pour garantir que la version d'OpenSSL
|
|
souhaitée est sélectionnée, la variable d'environnement <literal>PKG_CONFIG_PATH</literal>
|
|
peut être utilisée pour contrôler le chemin de recherche de <literal>pkg-config</literal>.
|
|
</para>
|
|
</note>
|
|
|
|
<para>
|
|
La dernière étape de construction, <command>make install</command>, indiquera où
|
|
<filename>mongodb.so</filename> a été installé, similaire à :
|
|
<programlisting role="txt">
|
|
<![CDATA[
|
|
Installing shared extensions: /usr/lib/php/extensions/debug-non-zts-20220829/
|
|
]]>
|
|
</programlisting>
|
|
</para>
|
|
|
|
<para>
|
|
Il faut s'assurer que l'option <link linkend="ini.extension-dir">extension_dir</link>
|
|
dans &php.ini; pointe vers le répertoire où <filename>mongodb.so</filename>
|
|
a été installé. L'option peut être interrogée en exécutant :
|
|
<programlisting role="shell">
|
|
<![CDATA[
|
|
$ php -i | grep extension_dir
|
|
extension_dir => /usr/lib/php/extensions/debug-non-zts-20220829 =>
|
|
/usr/lib/php/extensions/debug-non-zts-20220829
|
|
]]>
|
|
</programlisting>
|
|
</para>
|
|
|
|
<para>
|
|
Si les répertoires diffèrent, modifiez
|
|
<link linkend="ini.extension-dir">extension_dir</link> dans &php.ini; ou
|
|
déplacez manuellement <filename>mongodb.so</filename> dans le répertoire correct.
|
|
</para>
|
|
|
|
<para>
|
|
Pour finir, ajoutez la ligne suivante au fichier &php.ini; pour chaque environnement
|
|
qui aura besoin d'utiliser l'extension :
|
|
<programlisting role="ini">
|
|
<![CDATA[
|
|
extension=mongodb.so
|
|
]]>
|
|
</programlisting>
|
|
</para>
|
|
</section>
|
|
|
|
</section>
|
|
|
|
|
|
<!-- Keep this comment at the end of the file
|
|
Local variables:
|
|
mode: sgml
|
|
sgml-omittag:t
|
|
sgml-shorttag:t
|
|
sgml-minimize-attributes:nil
|
|
sgml-always-quote-attributes:t
|
|
sgml-indent-step:1
|
|
sgml-indent-data:t
|
|
indent-tabs-mode:nil
|
|
sgml-parent-document:nil
|
|
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
|
|
sgml-exposed-tags:nil
|
|
sgml-local-catalogs:nil
|
|
sgml-local-ecat-files:nil
|
|
End:
|
|
vim600: syn=xml fen fdm=syntax fdl=2 si
|
|
vim: et tw=78 syn=sgml
|
|
vi: ts=1 sw=1
|
|
-->
|