Mon précept ! Start Small – Think Big – Build Quicktly
Tutos
Serveur gentoo Release 2 – Ajouter memcache
3/09/10
Voici la procédure pour ajouter memcache sur un serveur gentoo OVH release 2
ln -s /usr/local/php5/bin/phpize /bin/phpize
ln -s /usr/local/php5/bin/php-config /bin/php-config
ln -s /usr/local/php5/bin/pear /bin/pear
ln -s /usr/local/php5/bin/pecl /bin/pecl
cd /usr/local/src
wget http://pecl.php.net/get/memcache-3.0.4.tgz ====>télécharger éventuellement la dernière version
tar zxvf memcache-3.0.4.tgz
cd memcache-3.0.4
phpize
./configure
make & make install
# Editer le fichier de php.ini
vi /usr/local/lib64/php5/php.ini
# Changer le directory des extensions
extension_dir= »/usr/local/php5/lib/php/extensions/no-debug-non-zts-20060613/ »
# ajouter l’extension
extension=memcache.so
pour tester si ça tourne bien
make test
Migrer de PHP 5.2 à 5.3 : Une synthèse
27/12/09
Ce tuto a pour objectif de faire un résumé concernant la migration de PHP 5.2 à PHP 5.3. J’ai fait une synthèse des informations que j’ai pu recueillir dans diverses sources sur internet. Mon objectif est aussi de m’en servir dans le cadre de la migration de plateforme de ecommerce que j’ai mise en place ClicShopping qui fonctionnait bien sous php 5.2 mais pas sous PHP 5.3.
Il ne s’agit pas de réecrire le document de PHP.net : http://fr.php.net/manual/fr/migration53.php. Suivre à la lettre ces informations peut ne pas suffire à avoir une application 100% compatible PHP 5.3, mais le plus gros du travail sera fait.
- Information : remplacer par call_user_func avec en tableau l’objet.
- Information : il faut réécrire proprement le code. Un foreach ne serait pas suffisant, la fonction call_user_method() étant dépréciée. Il faudra utiliser désormais call_user_func.
- Information : suppression simple, les variables syslog n’ont plus besoin d’être initialisées.
- Chaîne de recherche : define_syslog_variables();
- Chaîne de remplacement : //define_syslog_variables()
- Information : utiliser preg_match.
- ereg(« regex », devient preg_match(« #regex# »,
- Précautions : penser à mettre les délimiteurs. Pas de remplacement automatique car il faut souvent corriger les expressions régulières (par exemple : « \. » devient « . »). Une relecture attentive s’impose.
- Information : utiliser preg_replace.
- ereg_replace(« regex », devient preg_replace(« #regex# »,
- Précautions : penser à mettre les délimiteurs. Pas de remplacement automatique car il faut souvent corriger les expressions régulières (par exemple : « \. » devient « . »). Une relecture attentive s’impose.
- Information : utiliser preg_match.
- eregi(« regex », devient preg_match(« #regex#i »,
- Précautions : penser à mettre les délimiteurs et le i. Pas de remplacement automatique car il faut souvent corriger les expressions régulières (par exemple : « \. » devient « . »). Une relecture attentive s’impose.
- Information : utiliser preg_replace.
- eregi_replace(« regex », devient preg_replace(« #regex#i »,
- Précautions : penser à mettre les délimiteurs et le i. Pas de remplacement automatique car il faut souvent corriger les expressions régulières (par exemple : « \. » devient « . »). Une relecture attentive s’impose.
- Information : pas de remplacement automatique possible. Il faut passer en revue ses requêtes et les échapper, par exemple avec mysqli_escape_string().
- Information : utiliser $_SESSION['ma_variable'] = ‘toto’;
- Chaîne de recherche : [^_]session_register\((.*?)\)
- Chaîne de remplacement : \$_SESSION\[$1\]
- Précautions : le [^_] est utile si vous avez des éléments type monframework_session…
- Information : utiliser unset($_SESSION['ma_variable'])
- Chaîne de recherche : [^_]session_unregister\((.*?)\)
- Chaîne de remplacement : unset\(\$_SESSION\[$1\]\)
- Précautions : le [^_] est utile si vous avez des éléments type monframework_session…
- Information : utiliser isset($_SESSION['ma_variable'])
- Chaîne de recherche : [^_]session_is_register\((.*?)\)
- Chaîne de remplacement : isset\(\$_SESSION\[$1\]\)
- Précautions : le [^_] est utile si vous avez des éléments type monframework_session…
- Information : fonction à remplacer.
- Chaîne de recherche : set_socket_blocking(
- Chaîne de remplacement : stream_set_blocking(
- Information : utiliser preg_split.
- split(« regex », devient preg_split(« #regex# »,
- Précautions : mettre les délimiteurs. Pas de remplacement automatique car il faut souvent corriger les expressions régulières (par exemple : « \. » devient « . »). Une relecture attentive s’impose. Explode() peut-être utile s’il n’y a pas besoin d’expression régulière.
- Information : utiliser preg_split.
- spliti(« regex », devient preg_split(« #regex#i »,
- Précautions : mettre les délimiteurs et le i. Pas de remplacement automatique car il faut souvent corriger les expressions régulières (par exemple : « \. » devient « . »). Une relecture attentive s’impose. Explode() peut-être utile s’il n’y a pas besoin d’expression régulière.
- Information : devient inutile avec les expressions régulières POSIX.
- Information : charger les extensions via php.ini à la place.
- Information : fonction à remplacer par mysql_select_db() + mysql_query()
- Chaîne de recherche : mysql_db_query(
- Chaîne de remplacement : mysql_query(
- Précautions : un remplacement automatique se fera généralement entre mysql_db_query et mysql_query. mysql_select_db pouvant être placé après mysql_connect.
- Information : fonction à remplacer.
- Chaîne de recherche : mysql_escape_string(
- Chaîne de remplacement : mysql_real_escape_string(
Bonne chance car vous en aurez besoin !!
Serveur Gentoo Release 2 d’Ovh – Tuto Configurer les emails
25/07/09
Arrêter qmail
qmail stop
1 – Configurer les spam afin de recevoir cette indication dans le sujet du mail
Editer ce fichier
vi /var/qmail/bin/qmail-scanner-queue.pl
Trouver la synthaxe $sa_subject_site et y ajouter ***SPAM***
2 – Configurer la taille des boites mail
/etc/vpopmail
vi vlimits.defaullt
Trouver la synthaxe default_quota et y mettre 20971520 pour 20 Mo
3- Ajouter un port spécifique au mail:
Cette procédure a pour objectif d’envoyer les emails soit via le port 25 ou le 5025. Ce dernier n’étant pas paramétrer, cette procédure aidera ceux qui souhaite le faire.
Il est fortement conseiller de passer par le port 5025 afin d’éviter les filtrages de certains provider qui interdisent le port 25 (orange, free, sfr ….)
serveur de mail :
/etc/init.d/qmail
ebegin « starting smtp » ….;
en dessous de eend $?
rajouter
env – PATH= »/var/qmail/bin:/usr/local/bin » CHKUSER_START= »DOMAIN » \
tcpserver -H -R -x /etc/tcp.smtp.cdb -c100 -u508 -g503 0 5025 \
/var/qmail/bin/qmail-smtpd 2>&1 \
| /usr/local/bin/tai64n \cd
| /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog /var/log/qmail5025/ &
eend $?
puis
mkdir /var/log/qmail5025
chown qmaill:root /var/log/qmail5025
—-
redémarrer qmail ou faire un reboot
qmail restart
Serveur Gentoo Release 2 d’Ovh – Commande de bases et MAJ
25/07/09
Ce tuto a pour objectif d’aider les personnes qui souhaitent paramétrer correctement leur serveur OVH.
Bien que cette solution soit livrée avec tous les élements pour bien commencer à administrer le serveur, il est toutefois nécessaire de faire des petites interventions.
les commandes utiles
- pour mettre à jour le portage du serveur : emerge –sync ou gensync ovh
- pour faire une recherche d’un paquet : emerge –search
Il peut y avoir un pb avec cette commande si ce message apparait : !!ARCH is not set missing /etc/make.profile….
Dans ce cadre faire cette opération (n’oubliez pas avant de faire un emerge –sync)
rm /etc/make.profile
ln -s /usr/portage/profiles/default-linux/x86/2007.0 /etc/make.profile
- pour faire une mise à jour : emerge –update
- pour vérifier les dépendance : emerge –pretend ou emerge –ask
Tuto : Comment installer correctement OpenSi : serveur OVH Gentoo Release 2
25/07/09
OpneSI sont un ERP opensource dont la focalisation se fait sur la gestion commerciale et la comptabilité française (mais qui peut être utilisé pour d’autres comptas).
Le serveur dédié OVH Release 2 est une distribution spécialement conçue par OVH sur le système d’exploitation Linux / Gentoo. La procédure a pour objectif de vous aider à installer OpenSi sur le serveur dédié OVH Release 2.
Utiliser la fonctionnalité emerge peut se révéler « peu pertinente » dans le cadre de cette distribution. En effet, il se peut que certains fichiers en soient altérés et mettent en péril vos mises à jour.
L’ensemble de ce tuto a pour objectif de vous aider à installer OpenSi sur la GENTOO OVH.
Installation des programmes nécessaires
OpenSi nécessite mysql, java et tomcat pour fonctionner.
Mysql est installé par défaut sur la Gentoo ainsi que PHP. Toutefois, Tomcat et java sont à installer. Connectez-vous sur la gentoo via putty ou tout autre outil en mode administrateur.
Procédure pour installer JAVA JDK
Avant de commencer à installer tomcat, il est nécessaire d’installer java de chez sun.
Une petite vérification pour commencer. Théoriquement , la version 4 de java est déja installée. Toutefois, pour faire fonctionner OpenSi, il faut avoir au moins la version 5 ou plus
1 – Petite vérification
Vous devriez voir apparaitre un numéro de version de java. Si ce n’est pas le cas, ce n’est pas grave.
2 – Installez SUN-JAVA JDK
Pour installer sun java, il faut aller sur le site de SUN et télécharger JAVA
Vous pourriez éventuellement rencontrer une petite difficulté à ce niveau car il n’y a pas de possibilité pour télécharger ce module via la commande wget. Donc, vous pouvez le télécharger sur votre bureau, un espace ftp puis récupérer votre fichier via la commande wget
3 – Se mettre dans le répertoire opt
4 – Téléchargez la dernière version de sun-jdk
5 – Installez Sun Java jdk (pour une gentoo 64 Bits)
Le fichier va se décompresser et créer un répertoire qui va s’appeler jre1.6-0_10.
Comme pour tomcat, le répertoire peut différer en fonction de la version que vous avez téléchargé.
6 – Créez un lien symbolique
Pour pouvoir déclarer java au sein de la gentoo, on va créer un lien symbolique qui va se trouver dans le répertoire /usr/lib64/jvm.
Si jvm n’existe pas, il faudra le créer avec cette commande
- A défaut, vous pouvez passer à l’étape ci dessous
7 – Déclaration de java au sein de la Gentoo
puis
8 – vérification du bon fonctionnement de java
Vous devriez voir apparaitre un numéro de la dernière version de java. Si ce n’est pas le cas, il faut vérifier ou se trouve votre erreur.
Si tout es ok, vous pouvez continuez l’installation
Vous devriez voir apparaitre un numéro de la dernière version de java. Si ce n’est pas le cas, il faut vérifier ou se trouve votre erreur.
Si tout es ok, vous pouvez continuez l’installation
Procédure pour installer ANT
1 – On se met dans le répertoire opt
2 – Téléchargez Ant
Nous allons maintenant installer ANT : Récupérez tout l’abord le binaire sur le site de ANT : http://ant.apache.org/bindownload.cgi
3 – Installer ant
- wget http://mirror.mkhelif.fr/apache/ant/binaries/apache-ant-1.8.0-bin.tar.gz ====> #adaptez l’url
- tar -xvzf apache-ant-1.8.0-bin.tar.gz
- mv apache-ant-1.8.0 ant
Procédure pour installer Tomcat
on va installer tomcat dans le répertoire opt de la gentoo.
1 – On se met dans le répertoire opt
2 – Téléchargez Tomcat
Veuillez noter que le lien permettant de récupérer le tar de Tomcat n’est pas stable. Il peut changer en fonction de l’arrivée des nouvelles versions de l’outil. Dans ce cas, je vous invite à visiter cette page http://tomcat.apache.org/download-60.cgi et copier le lien de téléchargement pour obtenir la dernière version. Si vous avez une autre version, il suffira de changer uniquement le -6.0.18 par votre version pour effectuer l’installation
3 – Décompressez le programme
4 – On se met à l’intérieur du répertoire de tomcat
5 – Déplacez le répertoire webapps
La gentoo release a 2 partitions par défaut, la première concerne les fonctionnement de la Gentoo, la deuxième, le répertoire Home, concerne toutes les données (site web/ logs …). Ce dernier répertoire contient à peu près 90% de l’espace de votre disque.
On va déplacer le répertoire webapps via un lien symbolique vers le répertoire Home.
on déplace webapps avec ses droits
On crée le lien symbolique
Vous devriez avoir dans le répertoire /home/webapps, tous les fichiers de tomcat du répertoire webapps. Dans le répertoire /opt/apache-tomcat-6.0.18/ vous devez avoir le lien symbolique qui est crée et qui redirige vers le répertoire /home/webapps/.
6 – Exporter les variables java
Paramétrage de tomcat
La procédure d’installation est terminée et si tout est correcte. Il faut procéder maintenant au paramétrage de tomcat.
Pour préserver la sécurité de l’environnement, on va créer un groupe et un utilisateur que l’on va appeller tomcat ainsi qu’attribuer ces droits à l’ensemble du répertoire webapps du répertoire /home/
1 – Création du groupe tomcat
2 – création du user tomcat
3 – Attribution des droits dans le répertoire /home/webapps
On va procéder maintenant au paramétrage pour permettre à tomcat de démarrer. On va créer un fichier dans le répertoire etc/init.d que l’on va appeler tomcat6
4 – Se déplacer dans le répertoire init.d
5 – Editez le fichier tomcat6
7 – Copiez ces lignes dans le fichier créé. Ce bout de code vous permettra de démarrer tomcat
#!/sbin/runscript # Copyright 1999-2008 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ opts="${opts} reload" TOMCAT="/opt/apache-tomcat-6.0.18/bin" depend() { need net use mysql dns logger netmount postgresql after sshd } start() { ebegin "Demarrage de Tomcat avec JDK" sh ${TOMCAT}/startup.sh eend $? } stop() { ebegin "Arret Tomcat avec JDK" sh ${TOMCAT}/shutdown.sh eend $? } reload() { if ! service_started "${myservice}" ; then eerror "Tomcat ne fonctionne pas ! veuillez utiliser la commande start" else ebegin "Redemarage de Tomcat" sh ${TOMCAT}/shutdown sleep 5 sh ${TOMCAT}/startup.sh eend $? fi }
7 – Enregistrez le fichier et quittez
Rendre exécutable fichier
chmod +x /etc/init.d/tomcat6
Appuyer sur echap puis écrivez « :wq » sans les guillements
8 – Changement du port de connexion à tomcat
Si vous voulez modifier le port, éditez server.xml
Si vous souhaitez remplacer le port initial du serveur tomcat alors remplacez 8080 par 8180 dans :
<!-- Define a non-SSL HTTP/1.1 Connector on port 8080 --> <Connector port="8080" maxHttpHeaderSize="8192"
10 – Context et redémarrage de Démarrez Tomcat
les commandes ci dessous sont aussi applicables :
/etc/init.d/tomcat6 stop ==> arrête tomcat
/etc/init.d/tomcat6 restart ===> redémarre tomcat
/etc/init.d/tomcat6 start ===> démarrage de tomcat
Si tout fonctionne correctement, vous devez voir les messages de type (chemin pouvant varier en fonction de votre installation) suivants :
Using CATALINA_BASE: /opt/apache-tomcat-6.0.18
Using CATALINA_HOME: /opt/apache-tomcat-6.0.18
Using CATALINA_TMPDIR: /opt/apache-tomcat-6.0.18/temp
Using JRE_HOME: /usr/lib/j2sdk1.5-sun/ (ou la version que vous avez installé)
Dans votre navigateur, tapez http://mondomaine:8080 (ou le port que avez créé) permettra de savoir si le serveur tomcat fonctionne correctement. Vous devriez voir une page spécifique dédiée à tomcat.
Si tout est bon alors vous pouvez passer à l’étape suivante.
Paramétrage de MYSQL
Sur la gentoo, il se peut que lors du démarrage de OpenSi, vous ne puissiez pas vous connecter, donc il est nécessaire de faire cette petite opération sur mysql en commentant cette commande skip-networking
1 – Editez le fichier de config de mysql
2 – mettez en commentaire skip-networking
Rechercher la ligne ou vous trouverez skip-networking et mettez là en commentaire en mettant un # au début de la ligne puis enregistrer en appuyant sur echap puis tapez « :wq » sans les guillements
3 – redémarrez mysql
Si tout est bon alors vous pouvez passer à la dernière étape, l’installation de Opensi
Procédure pour installer OpenSi
Installation de la partie serveur
1 – Télécharger le fichier serveur de OpenSi
Dans un premier temps, mettez vous dans le répertoire /home/webapps
Puis il faut ensuite télécharger OpenSi. Ce ficher est disponible à la section du téléchargement du site de OPENSI. Opensi.org.
Il faudra l’exporter sur votre bureu, le mettre sur un ftp et le rapatrier sur le serveur
2 – Extrayez l’archive
3 – Placez vous dans le répertoire OpenSi et compiler l’application
Vous pouvez à ce moment changer le nom du répertoire OpenSi par celui que vous souhaitez (attention à la suite du tuto qui est basé sur le répertoire OpenSi
4 – Installez OpenSi
5 – Copier le fichier opensi.cfg
6 – Paramétrez le fichier OpenSi.cfg
Placez vous dans le répertoire configuration
7 – Editez le fichier OpenSi.cfg
Modifier les synthaxes suivantes ou à vérifier
- L’attribution des chemins
app.UploadDir: /home/webapps/OpenSi ==> Ce paramètre peut être modifié si vous avez donné un autre répertoire
Puis
opensi.absdir: /home/webapps/OpenSi ==> Ce paramètre peut être modifié si vous avez donné un autre répertoire
- La connexion à la base de données
jdbc.Url: jdbc:mysql://localhost/OpenSi ==> Ce paramètre peut être modifié si vous avez donné un autre répertoire
Pour améliorer la sécurité de votre application, vous pourvez changer ces paramètres
jdbc.User: OpenSi ===> par un user créer dans la base de données jdbc.Password: OpenSi ===> par mot de passe dans la base de données
- Le paramétrage des emails
email.MailHost: ===> insérer vos éléments ici
email.From: ===> insérer vos éléments ici
email.maintenance: ===> insérer vos éléments ici
- Le paramètre concernant les log, veuillez supprimer le #. le log se trouveras directement dans le répertoire de OpenSi
9 – Vérifier les droits d’accès aux différents répertoires (pdf, graph, logos, iobuffer, photos_articles, photos_familles, photos_marques, rapports) qui doivent être en 777.
A défaut, vous pouvez réaliser cette opération
9 – Procédure de création de la base de données
Placez vous dans le répertoire mysql
10 – Créez la base
- Modifier l’accès à la base de données (non obligatoire :
Si vous souhaitez modifier les droits de base de données, nom utilisateur, nom base de données, pour une meilleure sécurité, veuillez changer ces paramètres en éditant le fichier General.sql. Toutefois, il se peut que les mises à jour soit plus difficiles à réaliser.
GRANT ALL PRIVILEGES on *.* to 'OpenSi'@'localhost' identified by 'OpenSi'; ==> OpenSi par le nom d'utilisateur et de la base de données
create database OpenSi; ==> OpenSi par le nom de la base de données use OpenSi; ==> OpenSi par le nom de la base de données
- lancer le script d’installation
il est nécessaire de passer par le mode console
Cette opération va prendre un certains temps. Dès que c’est fait l’installation est terminée et on peut procéder à l’installation de la partie client
Installation de la partie client
La partie client nécessite aboslument le navigateur firefox 3 , téléchargeable ici : http://www.mozilla-europe.org/fr/firefox/
Rendez vous sur la zone de téléchargement de OpenSi et cliquez sur le client.xpi correspondant à votre serveur. Le client va s’installer automatiquement. Si vous souhaitez plus d’information sur la partie client, veuillez vous rendre ici sur opensi.org
Finalisation de l’install
Relancez tomcat pour prendre en compte les changements
Astuce !
Vous pouvez créer un lanceur avec : firefox -chrome chrome://OpenSi/content/login.xul
comme commande
Voiloù, une aide bien utile pour moi et pour ceux qui veulent utiliser le logiciel