You are currently browsing the archives for the serveur category.

Les différentes solutions Apache, MySQL, PHP sous Mac

Il existe sous MacOS X plusieurs façons d’obtenir un MAMP (Mac Apache MySQL Php) :

- MAMP
- XAAMP
- Utilisation des packages pré-compilés
- Compilation soi-même

Même si Leopard est fourni désormais avec php 5, certaines librairies sont manquantes et il peut être utile de se faire sa propre installation de zéro.

MAMP

A203C0DC-EA20-4908-80BF-099AF4BFDB2D.jpg

MAMP est la solution tout en un qui ne nécessite aucune connaissance particulière. Un simple glisser-déposer dans le dossier Application et vous avez vos serveurs qui sont prêt à démarrer.
Aucune configuration particulière.
L’avantage est qu’en quelques clicks on a une installation complète d’une solution basé sur Mac MySQL et PHP. Néanmoins, dés lors qu’on souhaite pousser la solution et par exemple installer une librairie via Pear, on constate que cela ne marche pas vraiment et on se retrouve coincé :/.
MAMP est donc à recommandé pour les personnes qui n’ont pas de besoins spécifiques et qui peuvent se contenter des librairies fournies.

XAMPP

9E338BF2-2F64-4E23-945B-AB9459CFACEC.jpg

XAMPP est une solution que j’ai découverte récemment grâce à un commentaire sur mon blog. Il fonctionne un peu comme MAMP sauf qu’il fournit également Perl. C’est encore une version en cours de développement qui est proposé, donc certaines fonctionnalité ne marche pas totalement.
J’ai notamment eu quelques soucis à faire marcher pear avec certaines librairies ou framework.
A garder de côté pour le moment. Je pense qu’il aura plus de succès que MAMP d’ici les mois qui viennent.

Utiliser les packages pré-compilés

A défaut de pouvoir utiliser les différentes solutions toute faites, il faut mettre un peu la main dans la cambouis. Par chance, Marc Liyanage maintient depuis quelques temps des versions compilés de php pour Tiger et Leopard.
Même si la version Leopard porte la mention bêta, elle fonctionne parfaitement et ne nécessite que quelques lignes de commandes pour pouvoir fonctionner pleinement.
Nous n’avons besoin que de php car Apple fournit par défaut avec MacOS X un serveur Apache parfaitement fonctionnel. Nous allons donc garder cette version d’apache qui va nous faciliter la vie.

Avant toute chose il faut télécharger la version qui correspond à votre version de MacOS (voir ci-dessus). Double-cliquer sur le fichier en question pour obtenir un dossier php5.
Il faut maintenant ouvrir le Terminal (que l’on peut trouver dans /Applications/Utilitaires/) pour y taper les lignes suivantes :

# il faut se rendre dans le dossier où vous avez décompresser php
cd dossier_ou_vous_avez_decompresser_php
# on va copier le dossier décompressé dans la dossier /usr/local
sudo mv php5 /usr/local/

On a maintenant une installation de php fonctionnelle qui est installé, il ne reste plus qu’à configurer l’ensemble.

# cette commande peut être tapé de n’importe où
cp /usr/local/php5/lib/php.ini-recommanded /usr/local/php5/lib/php.ini

Il faut à présent avec l’éditeur de votre choix modifier le fichier /etc/apache2/httpd.conf pour qu’il utilise la nouvelle version de php fraîchement installé.
Il faut remplacé la ligne suivante

LoadModule php5_module libexec/apache2/libphp5.so

par

LoadModule php5_module /usr/local/php5/libphp5.so

Afin de pouvoir utiliser nos commandes php à n’importe quoi sans les préfixer de /usr/local/php5/bin, il faut modifier la variable PATH de notre environnement. Pour cela, à l’aide du terminal, tapez :

# on va dans notre répertoire personnel
cd $HOME
nano .bash_profile

Dans ce fichier, il faut rajouter les lignes suivantes :

export PATH=$PATH:”/usr/local/php5/bin”

Sauvegarder le fichier. Pour que les modifications soit effectives, il faut fermer votre fenêtre du terminal et en ouvrir une nouvelle. Il vous suffit de taper la commande php –version afin de vérifier que c’est la bonne version. Pour cela, il faut vérifier le numéro de version, la 5.2.5 et la date de compilation built: Feb 20 2008 12:30:47.
Vous obtiendrez une sortie comme celle-ci :

BART:~ despe$ php –version
PHP 5.2.5 (cli) (built: Feb 20 2008 12:30:47)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies

Il ne reste plus qu’à redémarrer apache en tapant toujours dans le terminal

apachectl restart

Pour les allergiques à la ligne de commande, il est possible de passer directement par les préférences systèmes

pref_sys_1.jpg

Il suffit de cocher, décocher l’option partage web pour redémarrer Apache.

pref_sys_2.jpg

Pour accéder à vos sites, ils doivent être stockés dans le dossier Sites de votre répertoire personnel.

Installation de MySQL

L’installation de MySQL se trouve ici. Elle est simple à utiliser, il suffit de faire suivant, suivant en lisant néanmoins bien les éventuelles indications.

Une fois, l’installation terminé, je vous invite à installer le fichier dont l’extension est prefpane, cela va rajouter un panneau dans les préférences systèmes pour démarrer ou stopper le serveur MySQL.

Une dernière étape est requise pour autoriser votre utilisateur à lancer MySQL. Avec le finder, il faut se rendre dans la dossier /usr/local/mysql/. Etant donné que certains dossiers sont masqués par le finder, il faudra utiliser le menu “Aller” et “Aller au dossier” (avec le clavier POMME+SHIFT+G).
Une fois dans ce dossier, POMME+I sur le dossier data. Les informations de Partage et permissions vont être modifié. Il suffit de cliquer sur le + pour rajouter votre utilisateur.
Il faut que ces modifications s’appliquent au dossier et à ses sous-dossiers. Il faut pour cela cliquer sur l’icône à côté du - et sélectionner Appliquer aux éléments inclus.

Enfin, pour pouvoir accéder aux programmes de mysql (le client, mysqladmin, etc…), il faut modifier le .bash_profile comme nous l’avons fait pour php.

# on va dans notre répertoire personnel
cd $HOME
nano .bash_profile
export PATH=$PATH:”/usr/local/php5/bin”:”/usr/local/mysql/bin”

Attention, toutefois votre serveur MySQL dispose d’un compte root sans mot de passe avec tous les accès. Il ne faudra pas oublier de modifier ces paramètres.

Compilation soi-même

MacOS X étant un Unix, il est possible de compiler certains logiciels grâce à des gestionnaires de paquet comme FinkPorts ou DarwinPorts.
Néanmoins, l’opération est relativement longue selon le processeur de votre machine et assez compliqué à mettre en oeuvre pour un débutant.
Elle a le mérite d’exister.
Pour pouvoir utiliser ces outils, il vous faut les outils développeurs fourni sur votre dvd d’installation de MacOS X.

A quand une version de WAMPServer pour Mac ? :-)

Références et diverses sources : Olivier Mansour

Premier pas avec un serveur chez OVH sous Gentoo

Cette article va vous présenter les différentes méthodes pour installer un serveur LAMP sous OVH sous la distribution Gentoo 2007.0 (Il ne faut pas confondre la distribution Gentoo et celle qui est customisé par ovh).

Avant-propos

Gentoo est une distribution qu’on appelle source car elle compile chaque application et permet d’obtenir un gain sensible de performances et permet surtout de gérer plus finement les dépendances.
Il est possible d’opter pour d’autres distributions plus user-friendly lors de l’achat de votre serveur.
A vous d’opter pour celle qui vous correspond le mieux.
Les USE FLAGS qui vous seront présenté plus loin, sont en fait des options que tel ou tel paquet supporte et qu’on peut activer ou désactiver à notre convenance.

Pré-requis

Pouvoir se connecter en ssh et avoir quelques connaissances en ligne de commande Linux.

Premier pas avec le serveur

Avant de commencer, on va mettre à jour son gestionnaire de paquets. Sous gentoo, il s’appelle emerge.

Il suffit de taper la commande suivante pour mettre à jour les paquets.

emerge –sync

Dans un second temps, il faut vérifier le fichier /etc/hosts qui est souvent erroné.

127.0.0.1 localhost
91.1.1.1 2-r0001.ovh.net

En effet, pour une raison étrange, chaque nom de domaine se voit précédé d’un 2-nomduserveur.ovh.net.
Il suffit de l’enlever pour éviter d’éventuels problèmes.

Choix des options

Avant de lancer la compilation et l’installation de nos serveurs, il faut spécifier les différentes options que l’on souhaite activer pour chaque serveur.
Par exemple, les différentes librairies qu’on souhaite activer pour PHP.

Pour lister les options possibles d’un paquet il suffit de taper :

emerge -pv nomdupaquet

Ces options sont à renseigner dans le fichier /etc/portage/package.use sous la forme :

type-du-paquet/nom_du_paquet_sans_la_version -option_qui_sera_ignoré option_qui_sera_incluse

Evidemment, certains options peuvent paraître obscures et c’est pour ça que Gentoo Portage est là !
Pour l’utiliser, rien de plus simple, il suffit de taper le nom du logiciel que vous souhaitez installer, de choisir celui qui correspond.
Vous obtiendrez alors une liste de versions du paquet et tout en bas plusieurs onglets. Il suffit de regarder l’onglet “USE FLAGS” qui présente toutes les options.

Apache [USE FLAGS]

Apache utilise deux fichiers pour spécifier ses différentes options.
Dans package.use, on va spécifier les options générales tandis que les make.conf on va définir les modules à compiler (APACHE2_MODULES) et le type de fonctionnement d’apache (APACHE2_MPMS).

Voici pour exemple ma configuration.

ww-servers/apache ssl -debug -doc -ldap -selinux -sni -static -suexec threads

/etc/portage/package.use

APACHE2_MODULES=”alias auth_basic authz_host autoindex charset_lite deflate dir dumpio env expires headers log_config log_forensic mime mime_magic negotiation rewrite setenvif speling unique_id userdir vhost_alias filter”
APACHE2_MPMS=”worker”

/etc/make.conf

PHP [USE FLAGS]

Voici un exemple de configuration :

dev-lang/php berkdb cli crypt gdbm iconv ipv6 -ncurses nls pcre readline reflection session spl ssl unicode zlib -adabas apache2 -bcmath -birdstep -bzip2 -calendar -cdb -cgi -cjk -concurrentmodphp ctype curl -curlwrappers -db2 -dbase -dbmaker -debug -discard-path -doc -empress -empress-bcs -esoob exif -fastbuild -fdftk filter -firebird -flatfile -force-cgi-redirect -frontbase -ftp gd -gd-external -gmp -hash -imap inifile -interbase -iodbc -java-external -json -kerberos -ldap -ldap-sasl -libedit -mcve -mhash -msql -mssql mysql mysqli -oci8 -oci8-instant-client -odbc pcntl pdo -pic posix -postgres -qdbm -recode -sapdb sharedext -sharedmem simplexml -snmp soap sockets -solid -spell -sqlite suhosin -sybase -sybase-ct -sysvipc threads -tidy tokenizer -truetype -wddx xml xmlreader xmlrpc xmlwriter -xpm -xsl -yaz -zip -zip-external

MySQL [USE FLAGS]

Voici un exemple de configuration possible :

dev-db/mysql -berkdb -perl ssl -big-tables -cluster -debug -embedded extraengine -latin1 -max-idx-128 -minimal -selinux -static

Installation des serveurs

Il suffit de taper la commande suivante

emerge apache php mysql

Une fois la compilation terminé et qu’il n’y a pas d’erreurs pendant la compilation, il ne reste plus qu’à enregistrer les serveurs dans la séquence de démarrage.

rc-update add apache default
rc-update add mysql default

Maintenant, même en cas de redémarrage du serveur, Apache et MySQL démarreront sans intervention de votre part.

Configuration des serveurs

Apache

Selon les modules que vous avez choisi, le fichier /etc/conf.d/apache2 peut différer.
Il faut s’assurer néanmoins que sur la ligne APACHE2_OPTS la valeur -D PHP5 soit présente pour que le module php soit chargé.

APACHE2_OPTS=”-D DEFAULT_VHOST -D INFO -D LANGUAGE -D SSL -D SSL_DEFAULT_VHOST -D PHP5 -D USERDIR -D REWRITE”
SERVERROOT=/usr/lib/apache2
CONFIGFILE=/etc/apache2/httpd.conf
STARTUPERRORLOG=”/var/log/apache2/startuperror.log”
#RELOAD_TYPE=”graceful”

MySQL

emerge –config =dev-db/mysql-5.0.19

En remplaçant bien sur, 5.0.19 par la version que vous avez installé.
Derniére étape pour sécuriser le serveur,

mysql-secure-installation

Il suffit juste de répondre aux questions que le programme vous pose pour fermer quelques petits trous qui sont ouverts par défaut.

Voilà vous avez un serveur fin prêt à accueillir vos sites. J’ai passé sous silence d’autres aspects de la configuration qui sont spécifiques (les Virtual Hosts, optimiser MySQL) vu qu’il s’agissait ici des premiers pas avec son serveur.

Installation de Trac sous Gentoo

Trac est un exellent gestionnaire de projets open-source que l’on peut coupler au logiciel de version SVN. Je vais expliquer dans ce billet comment installer simplement trac sous gentoo. Cela peut servir pour ceux qui ont un hébergement dédié chez OVH par exemple.
Read the rest of this entry »

Flux RSS

Twitter

http://snurl.com/295dk arghhhhhh