Quelles sont les meilleures pratiques pour configurer un serveur pour les sites Wordpress?
-
-
Mise àjour: semble avoir corrigé leserreurs WP Super Cachepour lemomentet peutmaintenant revoirtoutmon site.Pourtant,c'est une question valide quoique chargée.Updated: seem to have fixed the WP Super Cache errors for now and can now view my whole site again. Still, it's a valid question albeit a loaded one.
- 0
- 2010-11-30
- Adam
-
4 réponses
- votes
-
- 2010-11-30
C'est une questiontrès chargée,je ferai demonmieuxici,gardez à l'esprit qu'ilest 4 heures dumatin,doncje vous donnejuste desmomentsforts,pas desexplications détaillées.
Linux Je suppose que vous utilisez une version récente d'Ubuntu
- Changez leport SSHpar défaut de 22,à autre chose (/etc/ssh/sshd_config).
- Activez AllowGroups ou AllowUser dans sshd_config,
- Installerfail2ban (apt-getinstallfail2ban)
- Installez apache2,php5et mysql-server
- Modifiez/etc/apache2/conf.d/security.confet apportez lesmodifications appropriéespour un serveur deproduction.
- Désactivez lejournal des requêtes lentes dans MySQL (vousne le souhaitezpasen production,en particulier sur un VPS)
- Configurez lefuseau horaire de votre système (dpkg-reconfiguretzdata)
- Assurez-vous que votrephp.ini reflète lemêmefuseau horaire
- Ajoutez unnouvel hôte virtuel dans/etc/apache2/sites-available/(laissez celuipar défaut seul)
- Activez cet hôte virtuelpar: a2nom de site dunouveaufichier hôte
- Activer la réécriture demod (réécriture a2enmod)
- Redémarrez apache2/etc/init.d/apache2 restart
Vouspouvez égalementfaire d'autres choses,commeinstaller Shorewall ou UFWpour unemeilleuregestion dupare-feu,installer Nginxen tant queproxyinverse vers Apache,peaufiner le cache de requêtes,mais cela dépend vraiment detout untas d'autres choses,et vous devriezmodifier lesparamètresmysql après avoir étéen modeproductionpendant quelquesjours.
It's a very loaded question, I'll try my best here, keep in mind it's 4am, so I'm just giving you highlights, not detailed explanations.
Linux I'm assuming you're using a recent version of Ubuntu
- Change the default SSH port from 22, to something else (/etc/ssh/sshd_config).
- Either enable AllowGroups or AllowUser in the sshd_config,
- Install fail2ban (apt-get install fail2ban)
- Install apache2, php5, and mysql-server
- Edit /etc/apache2/conf.d/security.conf and make appropriate changes for a production server.
- Disable the slow query log in MySQL (you don't want this on in production, especially on a VPS)
- Configure your system timezone (dpkg-reconfigure tzdata)
- Make sure your php.ini reflects the same time zone
- Add a new virtualhost in /etc/apache2/sites-available/ (leave the default one alone)
- Enable this virtual host by: a2ensite nameofnewvhostfile
- Enable mod-rewrite (a2enmod rewrite)
- Restart apache2 /etc/init.d/apache2 restart
You can do some other things as well, like install Shorewall, or UFW for better firewall management, install Nginx as a reverse proxy to apache, tweaking the query cache, but this really depends on a whole bunch of other things, and you should tweak mysql settings after being in production mode for a few days.
-
Lemode DSO était horrible,mais lanavigation a étépratiquement 100%fluide depuis quenous sommespassés au suphp.J'ai ététrès satisfait duniveau de support VPSgéré de Knownhost.DSO mode was horrendous but it has been virtually 100% smooth sailing since we switched to suphp. I've been quite happy with the level of managed VPS support from Knownhost.
- 0
- 2011-01-26
- Adam
-
Iln'estpasnécessaire de changer leport SSH si vous utilisez uneforme d'authentificationfortetelle que des certificats.Le seul avantageest de réduire lenombre de lecteurspartentatives qui apparaîtront dans vosjournaux.Celane rendpas le serveurplus sûr,justeplus obscur.Changing the SSH port is not necessary if you are using a strong form of authentication such as certificates. The only benefit is cutting out the number of drive by attempts that will show up in your logs. It doesn't make the server more secure, just more obscure.
- 1
- 2011-02-16
- dunxd
-
- 2010-11-30
Au risque dene pas répondre à la question (ce que Vid atrèsbien fait),puis-je vous suggérer depasser à un hébergeur VPS quipropose defaire l'administration du systèmepour vous (généralement sansfrais).
Jepense spécifiquement à http://hub.org . Marc (legars qui l'exécute,et l'un des quatrepremiers à avoir créé PostgreSQL)est lemeilleur administrateur système quej'aiejamais rencontré.
Lepanneau de contrôle du Hub (cen'estpas CPanel)esten cours de refonte aumoment oùj'écris ceci; sonmériteest dene présenter que ce dont les utilisateursfinaux sont censés s'inquiéter. Le reste,en substance,est soumis à l'ouverture d'unticket de supportet à la demande depriseen charge. (Bien sûr,vouspouvezfaire ce que vous voulezen tant que root si vous connaissez votre chemin dans le shell ...)
Oh,et ... Je devraismentionner que Marcest legenre degars quifouille réellement dans vos scriptset signale lebogue s'il soupçonne que c'est ce qui déclenche desproblèmes de serveur. Jene connais aucun autre hôte quifasse ça ...
At the risk of not answering the question (which Vid did quite well), may I suggest that you switch to a VPS host that offers to do the system administration for you (usually at no charge).
I'm thinking of http://hub.org specifically. Marc (the guy who runs it, and one of the original four who created PostgreSQL) is the best system admin I've ever come across.
Hub's control panel (it's not CPanel) is being redone as I'm writing this; its merit is to feature only what end users are supposed to be worrying about. The rest, in essence, is subject to opening a support ticket and requesting that it be taken care of. (Of course, you can do whatever you feel like it as root if you know your way around the shell...)
Oh, and... I should mention that Marc is the kind of guy who actually digs into your scripts and points the bug out if he suspects that is what is triggering server issues. I know of no other host who does that...
-
Autant queje sache,ilexistegénéralement une différence deprix considérableentre les VPS/dédiés/quoi que ce soitgéréset nongérés.Donc cen'estguère "sansfrais".Je conviens que l'hébergementgéréfacilite la vie.:)As far as I know there is usually considerable difference in price between managed and unmanaged VPS/dedicated/whatever. So it's hardly "no charge". I do agree that managed hosting makes life easier. :)
- 0
- 2010-11-30
- Rarst
-
Eneffet.C'estpourquoije recommande vivement le hub.org de Marc.Vous obtenezessentiellement un VPSgérépour leprix d'un VPSnongéré.La seulefois oùje l'ai vupayerpour sontemps,c'est quandje lui ai demandé de retirer untas detâches qui étaient clairement hors deportée.Indeed. Which is why I'm highly recommending Marc's hub.org. You essentially get a managed VPS for the price of an unmanaged one. The only time I've seen him charge for his time was when I asked him to pull out a bunch of tasks that were clearly out of scope.
- 0
- 2010-11-30
- Denis de Bernardy
-
- 2010-11-30
Quelquesidées:
Jen'aimepas WP-Super-Cache carilne résoutpas vraiment leproblème destemps degénération depages dynamiques lents.
Si vous avez un serveur dédié uniquementpour wordpress,je neferais aucun compromis:
nginx +php-fpm (vouspouvez également utiliser Apache avecfcgidet suexec (cela résout également laplupart desproblèmes depermission)
Installez le cache de l'opcode APC
Utilisez lebackend du cache apc: http://wordpress.org/extend/plugins/apc/
Installezbatcachepour un cache depage,il utilisera lebackend apc. . Configurez le cache de requêtes MySQLet regardez la valeur key_buffer si vous utilisez destables MyISAM ouinnodb_buffer_pool_size. Si vous avezbeaucoup de commentaires/mises àjour sur votreblog,envisagez d'utiliser InnoDB commemoteur de stockage.
Sur un VPStrès utilisé,j'aienviron 150ms detemps degénération depagepour lespages dynamiques (nonmisesen cache auparavant)et sibatcache livre lapage,iln'est que de 1ms. Ainsi,vouspouvez servirjusqu'à 200-300req/s avec un VPS "normal".
Some Ideas:
I don't like WP-Super-Cache because it does not really solve the problem of slow dynamic page generation times.
If you have a dedicated server only for wordpress I would not make any compromises:
nginx+php-fpm (you can also use Apache with fcgid and suexec (this also solves most of the permission problems)
Install the APC opcode cache
Use the apc cache backend: http://wordpress.org/extend/plugins/apc/
Install batcache for a page-cache it will use the apc backend. . Configure the MySQL query cache and take a look the key_buffer value if you are using MyISAM tables or the innodb_buffer_pool_size. If you are having a lot of comments/updates to your blog consider using InnoDB as a storage engine.
On a heavy used VPS I have about 150ms page generation time for dynamic pages (not cached before) and if batcache delivers the page it is only 1ms. So you can serve up to 200-300req/s with a "normal" VPS.
-
- 2010-12-01
Lorsquej'essaye d'installeret demettre àjour desplugins,je rencontre constamment deserreurs d'autorisations.
C'est unproblème courant lors de l'exécution de PHPen tant que DSO oumod_php.Lors de l'exécution de cette configuration,lesfichiers WordPress doivent appartenir aumême utilisateur sous lequel PHP s'exécute.Habituellement,cene serapersonne oupour Debian/Ubuntu www-data.
Pour réparertout le répertoire WordPressen exécutant ce qui suit àpartir de la ligne de commande:
$ chown nobody:nobody blog/ -R
Si WordPressestinstallé dans votre répertoirepublic racine,ce serait:
$ chown nobody:nobody public_html/ -R
Vouspouvez définir vos autorisations defichiers sur 644et vos répertoires sur 755
When trying to install and update plugins, I run into permissions errors all the time.
This is a common problem when running PHP as a DSO or mod_php. When running this setup the WordPress files must be owned by the same user PHP is running under. Usually it will be nobody or for Debian / Ubuntu www-data.
To fix chown the whole WordPress directory by running the following from the command line:
$ chown nobody:nobody blog/ -R
If WordPress is installed in your root public directory then it would be:
$ chown nobody:nobody public_html/ -R
You can set your file permissions at 644 and directories at 755
-
Chris,je vous recommanderais d'installer l'itkmpm,puis d'utiliser lenom d'utilisateur AssignUserIdnom degroupe (apt-getinstall apache2-mpm-itk),ce qui vous évite d'avoir à changer lapropriété des choses lorsque vouseffectuez un FTP,etc.Chris, I would recommend you install the itk mpm, and then use AssignUserId username groupname (apt-get install apache2-mpm-itk) this makes it so that you don't need to change ownership of things when you FTP in etc.
- 0
- 2010-12-01
- Vid Luther
J'aiembauché un administrateur systèmepour configurer un serveur VPSpourmoiet,malheureusement,il semble que les chosesn'ontpas été correctement configurées. Lorsquej'essaye d'installeret demettre àjour desplugins,je rencontre constamment deserreurs d'autorisations. WP Super Cacheest leprincipalproblème,carmes lecteurs rencontrent deserreurs 502. Actuellement,mon sitene chargepas lapagination (pas depage 2,page 3,etc.).
Mise àjour du 1/12: Le serveur apache s'est redémarréplusieursfois aujourd'huiet au cours des 3 dernières heures depuisma demande aufournisseur d'hôte,tout ce quej'aijusqu'àprésent,c'est qu'il surveilleil. Etil a redémarré depuis qu'ils ont commencé à surveiller aussi ...
L'administrateur système qui a configuré le serveur amentionné quepour qu'ilfonctionne correctementen mode DSO,les dossiers wp-admin,wp-contentet wp-plugins devraient être remplacéspar des autorisations 777. Le seulproblèmeest queje n'aitoujourspaspufairefonctionner unemise àjour 3.0.2 avec cesparamètres aujourd'hui (erreur 504timeoutnginx cettefois-ci),doncje suistoujourspréoccupé de l'exécuter de cettefaçonpour denombreuses raisons.
Onm'a dit que sij'exécuteen mode PHP (jepense que c'est vrai?),je vaismonopoliserplus de RAM avec des requêtes,etc.et queje suis déjà à 60% d'utilisationen mode DSO. Celan'a aucun senspourmoi carmonblog afonctionné unpeu lentementmaistoujours ok sans aucuntemps d'arrêt sur l'hébergementpartagé. Je suismaintenant sur un VPStrès réputé avec 512 Mo de RAMet mon sitene reçoit que 10 à 12 000pages vuesparjour.
L'hôte a dit qu'il avaitmodifié la configurationpour optimiser la RAM,doncje nepensepas que quoi que ce soit soitmal réglé. J'essaietoujours de comprendre ce qui sepasseici.
Développement .....