- Inscrit
- 3 Février 2011
- Discussions
- 91
- Messages
- 1 506
- Réactions
- 16
- Points
- 38
- Auteur du sujet
- Admin
- #1
Options de Config.php
Toutes les informations dont XenForo a besoin pour se connecter à votre serveur de base de données sont situées dans le fichier
src/config.php
.Selon la façon dont vous avez installé XenForo, config.php peut avoir été créé en copiant le contenu du fichier original
src/config.php.default
, ou le programme d'installation de XenForo peut l'avoir créé pour vous.Normalement, le fichier de configuration ne contient qu'une poignée de paramètres, qui sont juste suffisants pour permettre à votre XenForo de fonctionner, mais il y a une gamme d'options supplémentaires que vous pouvez ajouter pour changer la façon dont XenForo fonctionne.
Attention
Ces options contrôlent les fonctionnalités fondamentales de votre installation XenForo, et une configuration incorrecte peut rendre votre site inopérant. Si vous rencontrez des problèmes, annulez vos changements dans config.php
et réessayez.
Voici une liste de tous les paramètres qui peuvent être contrôlés via
config.php
. Les noms de ces variables doivent être saisis exactement comme ils sont affichés ici, sinon le paramètre sera ignoré. Les noms et les valeurs des variables sont sensibles à la casse.Dans chaque cas, le nom de la variable est indiqué avec sa valeur par défaut, par exemple :
$config['variableName']
= 'default-value'
;Connexion à la base de données
$config['db']['host']
='localhost'
;$config['db']['port']
=3306
;$config['db']['socket']
=null
;
$config['db']['username']
=''
;$config['db']['password']
=''
;$config['db']['dbname']
=''
;
Prise en charge complète de l'unicode et des emoji
$config['fullUnicode']
=false
;
Si votre installation de XenForo a commencé à la version 2, plutôt que de mettre à jour XenForo 1, votre base de données sera déjà en format unicode complet, et vous pouvez placer ce paramètre, ainsi qu'une valeur
true
dans votre fichier config.php.Si votre installation de XenForo a été mise à jour depuis XenForo 1, vous devrez exécuter le processus de conversion unicode avant de pouvoir utiliser l'unicode complet, et ce paramètre devrait être laissé à
false
jusqu'à ce que vous le fassiez.Note
La prise en charge complète de l'unicode nécessite au moins MySQL 5.5.
Options avancées
Ces options ne sont pas incluses en standard dans le config.php, parce que pour la plupart, XenForo utilisera les valeurs par défaut. Si vous décidez d'utiliser l'un de ces paramètres, assurez-vous de tester complètement le fonctionnement de vos forums avant de laisser le système fonctionner dans un environnement de production.
Désactivation de la fonctionnalité pour l'ensemble du site
Certains systèmes de XenForo peuvent être désactivés complètement à partir du fichier de configuration, sans avoir à entrer dans le panneau de contrôle de l'administrateur. Le fait de mettre l'une de ces options à
false
désactivera complètement la fonctionnalité correspondante.Note
Si un système est désactivé via le fichier config.php
, il ne peut pas être réactivé via le panneau de contrôle de l'administration - seule une modification du fichier de configuration rétablira la fonctionnalité du système.
Les descriptions de ces paramètres décrivent ce qui se passera si vous leur attribuez la valeur
false
.$config['enableMail']
=true
;$config['enableMailQueue']
=true
;$config['enableListeners']
=true
;$config['enableTemplateModificationCallbacks']
=true
;$config['enableGzip']
=true
;$config['enableContentLength']
=true
;$config['enableTfa']
=true
;$config['enableLivePayments']
=true
;$config['enableClickjackingProtection']
=true
;$config['enableReverseTabnabbingProtection']
=true
;$config['enableApi']
=true
;$config['enableAddOnArchiveInstaller']
=false
;$config['enableOneClickUpgrade']
=true
;
enableMail
Désactive complètement toutes les fonctions d'envoi d'email dans XenForo. Aucun email ne sera envoyé.
enableMailQueue
Désactive le système de mise en file d'attente du courrier électronique. Tout courriel restant dans la file d'attente ne sera pas envoyé, et tout nouveau courriel sera envoyé dès qu'il est généré, au lieu d'être mis en file d'attente pour être envoyé par lots.
enableListeners
Désactive tous les récepteurs d'événements de code dans XenForo. Cela désactivera en grande partie toutes les fonctionnalités des modules complémentaires, et peut être utile pour récupérer l'accès à votre système et à votre panneau de contrôle si un module complémentaire a mal fonctionné et vous a empêché de le faire.
enableTemplateModificationCallbacks
Désactive la possibilité pour les modifications de modèles d'effectuer leurs opérations à l'aide d'un rappel PHP. De la même manière que pour
enableListeners
, ce commutateur peut être utilisé pour regagner l'accès à un système rendu inopérant par un rappel défectueux.enableGzip
Par défaut, XenForo compresse les fichiers HTML et CSS des pages qu'il génère en utilisant le système de compression gzip, qui est ensuite décompressé de manière invisible par les navigateurs de vos visiteurs lorsque les données sont reçues. Cela peut considérablement accélérer le temps de chargement des pages, mais si vous souhaitez désactiver cette fonctionnalité et avoir le HTML et le CSS envoyés en tant que texte brut non compressé, désactivez ce paramètre.
enableContentLength
Normalement, XenForo enverra un en-tête HTTP Content-Length. Dans certaines configurations de serveur, le contenu peut être modifié entre l'envoi par XenForo et la réception par l'utilisateur final. Dans cette situation, l'en-tête Content-Length peut ne pas être mis à jour correctement et doit donc être désactivé.
enableTfa
Désactive l'authentification à deux facteurs (2FA), le système par lequel les utilisateurs doivent se connecter avec un nom d'utilisateur et un mot de passe, ainsi qu'un élément d'information supplémentaire, tel qu'un code provenant de leur téléphone. Utile si vous avez perdu l'accès à votre panneau de contrôle administratif ou si vous souhaitez empêcher tout utilisateur d'utiliser l'authentification à deux facteurs.
enableLivePayments
Si cette option est désactivée, aucun paiement ne sera traité. Les fournisseurs de paiement ne seront pas contactés et aucune transaction ne sera tentée. Utile pour exécuter un site de test avec une copie d'une base de données active.
enableClickjackingProtection
Normalement, XenForo envoie l'en-tête HTTP
X-Frame-Options
avec une valeur de SAMEORIGIN
afin d'empêcher le détournement de clics à partir de scripts malveillants.Lorsqu'elle est activée, cette option empêche les attaques par détournement de clic en plaçant votre forum dans une iframe et en incitant l'utilisateur à cliquer sur quelque chose. Cependant, cette option peut également empêcher des utilisations valides de l'intégration d'une iframe. Ne désactivez cette option que si vous en comprenez les implications.
enableReverseTabnabbingProtection
Lorsqu'elle est activée, cette option empêche les attaques d'hameçonnage basées sur la technique du tabnabbing inversé, qui sont déclenchées lorsque vos utilisateurs cliquent sur des liens vers des sites externes. Toutefois, cette protection peut interférer avec les services externes qui reposent sur la modification du traitement des clics sur les liens (par exemple, pour inclure des liens d'affiliation). Ne désactivez cette protection que si vous en comprenez les implications.
enableApi (2.1+)
Disables access to the REST API, normally accessible via
<url>/api/
.enableAddOnArchiveInstaller
Ceci contrôle l'accès au système d'installation/mise à jour des modules complémentaires basé sur le panneau de contrôle. Lorsqu'il est activé, il permet à un administrateur ayant les permissions nécessaires de télécharger un fichier zip contenant un module complémentaire de XenForo et de l'installer ou de le mettre à jour automatiquement.
Ce paramètre est désactivé par défaut pour des raisons de sécurité.
enableOneClickUpgrade (2.1+)
Désactive l'accès au système de mise à jour de XenForo en un clic dans le panneau de contrôle.
Paramètres des cookies
Si vous avez besoin de configurer les paramètres de configuration des cookies sur les navigateurs de vos visiteurs, vous pouvez utiliser les paramètres suivants, mais soyez averti que des valeurs incorrectes ou invalides pour ces paramètres peuvent vous empêcher, vous et vos visiteurs, de vous connecter à votre compte utilisateur XenForo, y compris le panneau de contrôle de l'administrateur.
La raison principale pour changer ces valeurs est d'accommoder les installations multiples de XenForo sur le même domaine. Si vous n'avez qu'une seule installation de XenForo sur votre domaine, il n'y a pas besoin de changer ces paramètres.
Ne modifiez ces valeurs que si vous en avez vraiment besoin et que vous savez ce que vous faites. Si vous rencontrez des problèmes, rétablissez les valeurs par défaut.
$config['cookie']['prefix']
='xf_'
;
xf_
pour leur permettre d'être distingués des cookies définis par d'autres systèmes. Une conséquence de la modification de cette valeur est qu'elle réinitialisera le paramètre Se souvenir de moi pour tous vos visiteurs connectés, qui devront se connecter à nouveau lors de leur prochaine visite sur votre site.La valeur de votre préfixe ne doit comporter que des lettres, des chiffres et des traits de soulignement, et est sensible à la casse.
$config['cookie']['path']
='/'
;
/
, les cookies définis par XenForo seront disponibles dans toutes les zones de votre site web. Si vous avez besoin de changer cela pour que les cookies de XenForo ne soient disponibles que dans une partie spécifique de votre site, changez la valeur pour inclure le chemin du répertoire vers la zone correcte de votre site, en commençant par l'emplacement racine de votre site, /
.Exemples de valeurs
'/'
Les cookies de XenForo sont disponibles dans toutes les zones de votre site web.'/forum/'
Les cookies de XenForo ne peuvent être lus que par les pages situées dans le répertoire duforum
, qui se trouve à 'http://example.com/forum', où example.com est l'adresse de votre site.'/path/to/other/folder/'
Les cookies de XenForo ne peuvent être lus que par les pages situées dans le répertoire path/to/other/folder, situé à http://example.com/path/to/other/folder.- Les cookies ne peuvent pas être lus par les pages situées dans des dossiers au-dessus de cet emplacement, c'est-à-dire:
http://example.com/path
http://example.com/path/to
http://example.com/path/to/other
Attention
Si vous spécifiez un chemin de cookie qui ne permet pas aux cookies d'être définis dans le répertoire racine de XenForo, XenForo sera incapable de lire les cookies qu'il définit, et les opérations critiques comme la connexion échoueront.
$config['cookie']['domain']
=''
;
La raison pour laquelle cette valeur est définie est que les cookies peuvent être partagés sur plusieurs sous-domaines. Par exemple, un réglage de
.example.com
permettrait aux cookies d'être accessibles sur tous les sous-domaines de example.com, tels que www.example.com
et other.example.com
. Dans la plupart des cas, ce paramètre peut être laissé par défaut.Exemples de valeurs
''
permet aux cookies d'être lus uniquement sur le domaine sur lequel ils ont été définis'.example.com'
permet de lire les cookies sur example.com et tout sous-domaine de celui-ci'subdomain.example.com'
permet aux cookies d'être lus uniquement sur subdomain.example.com
Emplacement des données et des scripts
Si vous voulez changer l'endroit où XenForo stocke les données et les scripts qu'il conserve dans les fichiers, tels que les avatars, les pièces jointes et les fichiers javascript, vous pouvez le faire en modifiant ces paramètres.
$config['externalDataPath']
='data'
;$config['externalDataUrl']
='data'
;$config['internalDataPath']
='internal_data'
;$config['codeCachePath']
='%s/code_cache'
;$config['tempDataPath']
='%s/temp'
;$config['javaScriptUrl']
='js'
;
Variables de chemin
Dans chacun de ces cas, un nom de variable se terminant par Path fait référence à un chemin interne du système de fichiers sur le serveur, relatif au répertoire dans lequel XenForo est installé. Les chemins relatifs commencent au répertoire d'installation de XenForo. Il peut être placé en dehors de la racine du site web.
Si votre installation de XenForo se trouve dans /users/yourname/htdocs/xenforo, les exemples suivants montrent comment différentes valeurs se rapportent à ce chemin :
data
-/users/yourname/htdocs/xenforo/data
../another-folder
-/users/yourname/htdocs/another-folder
/users/yourname/htdocs/xenforo/data
.Variables URL
Les variables dont le nom se termine par Url font référence à un chemin relatif à votre répertoire XenForo tel qu'il est visible depuis la racine de votre site web. Les URLs relatives commencent dans le répertoire d'installation de XenForo. Si votre installation XenForo se trouve à
http://example.com/xenforo
, les exemples suivants montrent comment les différentes valeurs seront évaluées:data
-http://example.com/xenforo/data
../another-folder
-http://example.com/another-folder
/a-root-folder
-http://example.com/a-root-folder
/xenforo/my-folder
-http://example.com/xenforo/my-folder
http://example.com/xenforo/data
//example.com/xenforo/data
Attention
Les répertoires spécifiés comme chemins doivent être accessibles en écriture par le serveur web (chmod 777) ou les données ne pourront pas être stockées dans ces emplacements par XenForo.
Si l'un de ces chemins et URLs est mal défini, d'importantes fonctionnalités de XenForo seront interrompues. Ne les modifiez que si vous savez exactement ce que vous faites.
externalDataPath
Définit l'emplacement du répertoire 'data', dans lequel XenForo conserve les avatars et les vignettes des pièces jointes, tel qu'il est visible depuis votre serveur web.
externalDataUrl
Définit le chemin d'accès au répertoire "internal_data", qui contient les fichiers qui ne sont pas transmis directement aux clients du navigateur web, tels que les pièces jointes.
codeCachePath
Définit l'emplacement du répertoire 'code_cache', qui stocke les versions en cache des fichiers PHP utilisés pour accélérer l'exécution de XenForo. Il se trouve normalement dans le répertoire 'internal_data'.
tempDataPath
Définit le chemin d'accès au répertoire utilisé pour stocker les fichiers temporaires, tels que les pièces jointes qui viennent d'être téléchargées et qui sont en cours de traitement avant d'être stockées à leur emplacement définitif. Ce répertoire se trouve normalement dans le répertoire "internal_data".
javaScriptUrl
Définit l'emplacement du dossier 'js', dans lequel XenForo s'attend à trouver les fichiers JavaScript nécessaires à son fonctionnement, en tant que chemin sur le serveur web public. Ce répertoire doit se trouver dans la racine du site web.
Adaptateur de base de données
$config['db']['adapterClass']
='XF\Db\Mysqli\Adapter'
;
Paramètres du client HTTP
Ces paramètres contrôlent le comportement du client HTTP interne de XenForo, qui est utilisé pour récupérer des ressources à travers internet, telles que des images et des pages web lors de l'utilisation du proxy d'images et de liens.
$config['http']['sslVerify']
=null
;$config['http']['proxy']
=null
;
sslVerify
oblige le système à vérifier le certificat SSL de tous les sites qu'il visite en utilisant SSL/HTTPS lorsqu'il demande des ressources. La valeur true
peut être utile dans certaines circonstances, mais il existe un certain nombre de façons dont la vérification du certificat SSL peut échouer, entraînant l'impossibilité de récupérer la ressource demandée. En cas de doute, ne modifiez pas ce paramètre.Si vous voulez que le client HTTP interne de XenForo effectue ses requêtes à travers un proxy, entrez l'adresse du serveur proxy dans le paramètre
proxy
.Autres variables
$config['globalSalt']
='<unique value>'
;
Normalement, XenForo génère sa propre valeur aléatoire global sécurisé, et vous n'aurez besoin de le changer que si vous voulez définir le vôtre.
$config['checkVersion']
=true
;
$config['passwordIterations']
=10
;
$config['maxImageResizePixelCount']
=20000000
;
$config['adminLogLength']
=60
;
$config['chmodWritableValue']
=0
;
$config['proxyUrlFormat']
='proxy.php?{type}={url}&hash={hash}'
;
Le format doit inclure les jetons {type}, {url} et {hash}, et doit pointer vers proxy.php, à moins que vous ne disposiez d'un script ou d'un système alternatif pour gérer les requêtes proxy.
$config['jobMaxRunTime']
=8
;
$config['fsAdapters']
=[]
;
Paramètres du cache
Pour les grands sites XenForo, il peut être avantageux d'utiliser un mécanisme de cache pour accélérer la génération des pages.
Les paramètres de mise en cache se trouvent tous dans la section
$config['cache']
, et sont discutés plus en détail dans la section Cache de ce manuel.Si vous configurez un cache, vous pouvez le désactiver à tout moment en fixant la valeur de cette option à
false
:$config['cache']['enabled']
=false
;
Paramètres du cache au niveau de la page
Lorsqu'un mécanisme de cache a été configuré, il est possible de mettre en cache des pages entières pour les utilisateurs invités à l'aide du pageCache. Ce système extrêmement puissant peut consommer de grandes quantités de ressources de cache, c'est pourquoi il est désactivé par défaut jusqu'à ce que des ressources lui soient allouées. Tous les détails et options sont décrits dans la section Prise en charge du cache > Mise en cache des pages pour les utilisateurs invités de ce manuel.
$config['pageCache']['enabled']
=false
;
Pour les développeurs et les concepteurs
Mode débogage
Le mode débogage est un état spécial dans lequel XenForo fonctionnera à des fins de débogage ou de développement.
$config['debug']
=false
;
Attention
N'activez jamais, jamais, le mode débogage sur un site de production en direct exposé à l'Internet.
Non seulement l'exécution et la génération des pages seront beaucoup plus lentes qu'avec le mode débogage désactivé, mais des informations importantes telles que l'état des requêtes SQL internes peuvent être révélées aux utilisateurs qui visitent le site. N'activez le mode débogage que si vous travaillez sur une installation privée de XenForo qui est protégée de tout visiteur malveillant potentiel.
Mode designer
Le mode Designer est une fonctionnalité avancée pour les concepteurs de style de XenForo, qui permet d'éditer les modèles directement dans le système de fichiers, plutôt que d'utiliser l'éditeur de modèles dans le panneau de contrôle de l'administration.
$config['designer']['enabled']
=false
;$config['designer']['basePath']
='src' . \DIRECTORY_SEPARATOR . 'styles'
;
enabled
permet d'activer ou de désactiver le mode designer, et la valeur basePath
contrôle l'emplacement dans lequel XenForo s'attend à trouver les fichiers de modèles, etc. avec lesquels le designer travaille.Une discussion plus approfondie sur le mode Designer peut être trouvée dans la documentation du développeur de XenForo 2.
Mode de développement
Le mode développeur est une autre fonctionnalité avancée, cette fois pour les développeurs de modules complémentaires de XenForo.
$config['development']['enabled']
=false
;$config['development']['defaultAddOn']
=''
;
enabled
permet d'activer ou de désactiver le mode développeur. Le paramètre defaultAddOn
vous permet de spécifier l'identifiant d'un module complémentaire, ce qui aura pour effet de définir automatiquement le paramètre Add-on pour le matériel nouvellement créé dans le panneau de contrôle de l'administrateur, en fonction du module complémentaire que vous avez spécifié.$config['development']['skipAddOns]
=null
;
['addOn1', 'addOn2']
. Tous les modules complémentaires spécifiés dans le tableau skipAddOns
seront ignorés lors de l'exécution d'outils de développement tels que l'importation et l'exportation de données.$config['development']['throwJobErrors']
=null
;
true
, toutes les erreurs qui sont normalement supprimées lors de l'exécution d'outils de développement, comme l'exécution du script de construction du module complémentaire, seront générées et affichées, ce qui interrompra le processus de travail. Cela peut s'avérer utile lors du débogage de problèmes liés aux résultats des travaux de développement.$config['development']['fullJs']
=false
;
En mettant la valeur à
true
, XenForo demandera les fichiers javascript complets. La fonctionnalité résultante sera la même, mais les fichiers complets, non minifiés, sont plus faciles à parcourir lors du débogage des problèmes que vous pourriez avoir lors du développement de vos modules complémentaires.L'utilisation des fichiers javascript complets fera que votre site génèrera plus de requêtes HTTP et consommera plus de bande passante, ce qui se traduira par une expérience plus lente pour les utilisateurs. Nous ne recommandons donc pas l'utilisation de
fullJs
sur les sites en production.Une explication complète du mode développeur est disponible dans la documentation développeur de XenForo 2.