web-dev-qa-db-fra.com

charge du serveur. $ _SERVER ['REMOTE_ADDR'] et $ _SERVER ['HTTP_Host']

en écrivant un nouveau code et en le testant, je l’intègre à mon site en testant l’adresse IP distante comme suit; c'est-à-dire que je suis le seul à voir le nouveau code:

dans /functions.php:

// to hide certain sections/features from people other than myself
$myIP = '219.88.88.88'; // the value as currently indicated by Airport Utility
if( FALSE ) // set to TRUE to initiate Remote Addr test
    define( 'ITS_ME', $myIP == $_SERVER['REMOTE_ADDR'] );
else
    define( 'ITS_ME', FALSE );

dans un modèle; par exemple, front-page.php:

if( ITS_ME ) // IN DEVELOPMENT
    echo gregory_get_featured_announcements();

en outre, cinq domaines pointent sur mon serveur car je suis connu sous 5 noms différents dans différentes langues. J'utilise $_SERVER['HTTP_Host'] dans une fonction de filtrage reliée à home_url() et site_url() qui définit le domaine des liens internes vers l'hôte spécifié par le visiteur.

J'aimerais savoir; Est-il probable que ceux-ci mettent une lourde charge sur le serveur? un plugin de cache comme W3 Total Cache aiderait-il?

Information additionnelle

mes excuses. la question est difficile à comprendre. s_ha_dum a raison. Je teste sur le serveur live. Ce que je fais ne serait jamais fait dans un cadre professionnel. Je développe mon propre blog personnel.

ITS_ME est un commutateur qui vaut TRUE si le visiteur chargeant le site a mon adresse IP; c'est-à-dire que le visiteur c'est moi. Si le commutateur est activé, le code dans if( ITS_ME ) conditionals est exécuté. Ce code pourrait figurer dans l’un de mes WP modèles. Le commutateur est également utilisé dans functions.php pour sélectionner sélectivement require() les fichiers en cours de développement WP.

pour les domaines, si un visiteur me rend visite à domain1.com, tous les liens internes seront basés sur domain1.com. s'ils visitent domain2.com, tous les liens internes seront basés sur domain2.com mais sinon, ils verront exactement le même contenu. veuillez consulter https://wordpress.stackexchange.com/a/73621/15311

Gregory

1
Gregory

Debug & Caching

... ne fonctionne tout simplement pas. Si vous souhaitez charger une page (sur une requête mise en cache) et effectuer toutes ces choses amusantes, comme vérifier si vous êtes connecté, utilisez un compte administrateur , etc., que tout cela serait contourné par le plugin de mise en cache. Le cache est appliqué à la page HTML résultante, pas au code PHP qui le génère.

(...) un plugin de cache comme W3 Total Cache aiderait-il?

NON, dit simplement. Explication étendue: cela aggraverait la situation. Vous mettriez en cache toutes les données (si le cache est généré en fonction de votre demande) et tout le monde recevrait le vidage de débogage. Alors fais-toi une faveur et

TOUJOURS désactiver la mise en cache si vous déboguez sur un serveur actif.

Comment déboguer sur un site en direct.

Dans l'un de mes plugins de débogage, que j'utilise sur des serveurs en direct, j'ai le contrôle suivant pour annuler l'opération si aucun des critères n'est rempli.

// Nothing to see here
if (
    ! is_admin()
    AND isset( $_GET['debug'] )
    AND 'true' === $_GET['debug']
    AND current_user_can( 'manage_options' )
    AND ( defined( 'DOING_AJAX' ) AND DOING_AJAX )
    AND ( defined( 'DOING_CRON' ) AND DOING_CRON )
)
    return;

Ainsi, la sortie de débogage ne sera visible que si la requête arg "?debug=true" ou "/debug/true" (en fonction des paramètres de permalien) est ajoutée.

Vous pouvez également écrire dans un fichier journal (mais cela ne devrait pas être fait sur des sites à fort trafic). Voici les lignes d'un fichier wp-config.php, qui supprime les erreurs, mais écrivez-les dans votre fichier journal.

# DEBUG
define( 'WP_DEBUG',               true );
// file: ~/WP_CONTENT_DIR/debug.log
define( 'WP_DEBUG_LOG',           true );
define( 'WP_DEBUG_DISPLAY',       true );
1
kaiser

J'aimerais savoir; Est-il probable que ceux-ci mettent une lourde charge sur le serveur? un plugin de cache comme W3 Total Cache aiderait-il?

La réponse courte est non, ce n'est pas une lourde charge sur le serveur. En règle générale, une simple vérification booléenne est considérée comme une opération "gratuite" et n'entraînera aucune surcharge significative pour votre site.

C’est en fait l’une des rares choses que W3 Total Cache n’aidera pas. Vous aurez besoin d’un accélérateur de cache de code , tel que XCache ou Zend Optimizer, qui précompilera et stockera votre code pour faire toute différence (pour ne pas dire que W3 ne sera pas avantageux tout autour). En fonction de votre solution d'hébergement, vous en avez peut-être déjà une.

1
totels

Je doute que le ITS_ME cause trop de problèmes avec le serveur. Ressemble à une charge assez mineure pour moi. J'ai fait beaucoup, bien pire pour un serveur. C'est une réponse assez courte, mais je pense que c'est tout.

La mise en cache devrait aider avec le site en général, mais je ne pense pas qu'il y ait quoi que ce soit de particulier qui se démarque dans cette mémoire cache ou non, votre opération a des frais généraux si bas que je doute que vous remarquiez.

Cependant, je définirais plus tôt ITS_ME, par exemple dans wp-config.php.

1
s_ha_dum