IMPROVE installer

This commit is contained in:
sparkyx 2005-02-08 19:57:38 +00:00
parent 39cef2800b
commit b899ea69f0
5 changed files with 148 additions and 217 deletions

View file

@ -99,7 +99,7 @@ session.cookie_path = /tmp ; the path the cookie is valid for
l'utilisateur et le mot de passe par défaut sont phpcompta/phpcompta
</p>
</sect>
<sect>J'ai trouvé un tit bug, comment faire un patchs ??
<sect>J'ai trouvé un tit bug, comment faire un patchs ??<label id="bug">
<p>
Le plus simplement du monde : d'abord récupérez le projet avec cvs,
corrigez le problème que vous avez détectez; vous vous placez à la
@ -107,60 +107,24 @@ racine du projet et vous tapez :
<quote>
cvs diff -u > patch-date-email
</quote>
vous pouvez envoyer le fichier résultat. Pensez à me dire si c'est un
patch relatif aux cvs ou non.
Pensez à d'abord effacer les fichiers inutiles, les ~, les corefiles...
Vous pouvez envoyer le fichier résultat. Pensez à me dire si c'est un
patch relatif aux cv ou non. Mais testez-le avant.
</p>
<p> Pour tester les patch,
<p>
Normalement un répertoire phpcompta va apparaitre, puis vous le copiez
cp -Rvp phpcompta phpcompta.orig
</p>
<p>
Appliquez éventuellement les patch puis corrigé les bugs, effacer les
fichiers inutiles, les ~, les corefiles...
</p>
<p>
Puis enfin, pour prendre tout le répertoire (avec prudence)
Pour le tester, faite un cvs co dans un autre répertoire que celui où vous
avez développé votre patch, puis essayer votre patch
<verb>
diff -Nru phpcompta phpcompta.orig > patch-(numéro de version)-votre-email
</verb>
</P>
<p>
IMPORTANT : relire le patch-(numéro de version)-votre-email pour voir si
tout ok et le tester
</p>
<p>
Pour le tester creer un répertoire appelé phpcompta n'importe où
ailleurs, reprenez la version d'origine, puis essayer
patch -p0 &lt; patch-(numéro de version)-votre-email si vous êtes dans le
patch -p0 &lt; patch-(numéro de version)-votre-email </verb>si vous êtes dans le
répertoire au-dessus de celui de phpcompta
patch -p1 &lt; patch-(numéro de version)-votre-email si vous êtes dans le
<verb>patch -p1 &lt; patch-(numéro de version)-votre-email</verb> si vous êtes dans le
répertoire courant de phpcompta
</p>
<p>
Si cela ne marche pas ce n'est pas bon
</p>
<p>
Pour un seul fichier, plus simple
copiez le fichier de phpcompta.orig dans le même répertoire que celui du
fichier changé puis placez vous dans le répertoire de au-dessus de celui
de phpcompta ( cd .. ) .
remplacez (sous-directory) par le nom du répertoire ou se trouve le fichier
modifié.
<verb>
diff -u phpcompta/(sous-directory)/fichier
/phpcompta/(sous-directory)fichier.orig &gt; patch-(numero de
version)-votre-email.
</verb>
</p>
<p>
Testez le:
sauvez votre fichier modifié sous un autre nom, faites cp -f fichier.orig
fichier, puis testez avec la commande patch (voir plus haut)
mot de passe par défaut est phpcompta
</p>
</sect>
<sect> Comment faire de la doc
<p>
@ -170,10 +134,8 @@ urpmi linuxdoc-tools, pour les autres, je ne sais pas :(
<p>
Une fois, les linuxdoc tools installés il peut être nécessaire
d'installer d'autres outils comme jade, sgml,...
Il faudra en tout cas ajouter les tetex-dvips, textex-xdvi, latex2html
<p>
De toute façon, vous
pouvez imprimer le guide, pour le trouver faites :
@ -186,7 +148,8 @@ pouvez imprimer le guide, pour le trouver faites :
Ensuite, editez le fichier sgml,
et surtout pensez à utilisez aspell -H --lang=fr_FR check FA-fr.sgml pour
véifier l'orthographe. Pour le visionner, faites linuxdoc -B html FAQ.sgml
soit linuxdoc -B rtf pour avoir un fichier rtf...
soit linuxdoc -B rtf pour avoir un fichier rtf... Puis faites un patch :-) <ref id="bug"
name="Comment faire un patch">
</p>
<sect>Comment contribuer ?
<p>Sur le site de Savannah, j'ai décidé d'utilisé le Task Manager, chacun ce qu'il
@ -200,30 +163,6 @@ sur un sujet <url url="http://savannah.nongnu.org/task/?group=phpcompta" name="P
Cela m'évite de devoir chaque fois changer sur le site de phpcompta
</p>
</sect>
<sect>Install.sh ne fonctionne pas<label id="script">
<p>
Il est important de suivre la procédure pour l'installation
voir INSTALL-fr (dans le répertoire doc) !!
</p>
<p>
A. se connecter en tant que l'utilisateur Unix postgres
et éxécuter la commande
createuser -d -a phpcompta
puis exécuterinstall.sh en tant que root.
Il serait prudent de changer le propriétaire des fichiers installer
</p>
</sect>
<sect>l'erreur ERROR: CREATE USER: permission denied
<p>
<tscreen><verb>
l'erreur ERROR: CREATE USER: permission denied
createuser: creation of user "phpcompta" failed
</verb></tscreen>
</p>
<p>
voir question précédente <ref id="script" name="install.sh">
</p>
</sect>
<sect> recevoir des erreurs de création
<p>
@ -259,7 +198,8 @@ Du
<p>
<sect1>Quel patch utiliser ?
<p>
Dans certains cas, le dernier patch reprend les autres, il faudra lire la release note du patch
Dans certains cas, le dernier patch reprend les autres,
il faudra lire la release note du patch
pour savoir ce qu'il faut appliquer avant.
Sinon, les patchs sont toujours nommés ainsi

View file

@ -22,18 +22,16 @@
8. J'ai trouvé un tit bug, comment faire un patchs ??
9. Comment faire de la doc
10. Comment contribuer ?
11. Install.sh ne fonctionne pas
12. l'erreur ERROR: CREATE USER: permission denied
13. recevoir des erreurs de création
14. Erreur objet n'existe pas
15. Comment appliquer un patch ?
15.1 Quel patch utiliser ?
15.2 Comment appliquer le patch
11. recevoir des erreurs de création
12. Erreur objet n'existe pas
13. Comment appliquer un patch ?
13.1 Quel patch utiliser ?
13.2 Comment appliquer le patch
16. Les entêtes de facture
17. Problèmes fréquents
17.1 Impossible de se logguer
17.2 J'ai le message d'erreur 'cannot find file ....'
14. Les entêtes de facture
15. Problèmes fréquents
15.1 Impossible de se logguer
15.2 J'ai le message d'erreur 'cannot find file ....'
______________________________________________________________________
@ -64,7 +62,6 @@
En fait c'est phpcompta, au départ c'était wcompta, contraction de
WebCompta mais malheureusement, c'est le nom d'un soft qui existait
déjà, j'ai été obligé de changer vers phpcompta.
3. Par où commence t'on et comment ?
@ -126,64 +123,38 @@
Le plus simplement du monde : d'abord récupérez le projet avec cvs,
corrigez le problème que vous avez détectez; vous vous placez à la
racine du projet et vous tapez :
cvs diff -u > patch-date-email
vous pouvez envoyer le fichier résultat. Pensez à me dire si c'est un
patch relatif aux cvs ou non.
Pensez à d'abord effacer les fichiers inutiles, les , les core-
files... Vous pouvez envoyer le fichier résultat. Pensez à me dire si
c'est un patch relatif aux cv ou non. Mais testez-le avant.
Normalement un répertoire phpcompta va apparaitre, puis vous le copiez
cp -Rvp phpcompta phpcompta.orig
Pour tester les patch,
Appliquez éventuellement les patch puis corrigé les bugs, effacer les
fichiers inutiles, les , les corefiles...
Pour le tester, faite un cvs co dans un autre répertoire que celui où
vous avez développé votre patch, puis essayer votre patch
Puis enfin, pour prendre tout le répertoire (avec prudence)
patch -p0 < patch-(numéro de version)-votre-email
diff -Nru phpcompta phpcompta.orig > patch-(numéro de version)-votre-email
répertoire au-dessus de celui de phpcompta
patch -p1 < patch-(numéro de version)-votre-email
IMPORTANT : relire le patch-(numéro de version)-votre-email pour voir
si tout ok et le tester
Pour le tester creer un répertoire appelé phpcompta n'importe où
ailleurs, reprenez la version d'origine, puis essayer patch -p0 <
patch-(numéro de version)-votre-email si vous êtes dans le répertoire
au-dessus de celui de phpcompta
patch -p1 < patch-(numéro de version)-votre-email si vous êtes dans le
répertoire courant de phpcompta
Si cela ne marche pas ce n'est pas bon
Pour un seul fichier, plus simple copiez le fichier de phpcompta.orig
dans le même répertoire que celui du fichier changé puis placez vous
dans le répertoire de au-dessus de celui de phpcompta ( cd .. ) .
remplacez (sous-directory) par le nom du répertoire ou se trouve le
fichier modifié.
diff -u phpcompta/(sous-directory)/fichier
/phpcompta/(sous-directory)fichier.orig > patch-(numero de
version)-votre-email.
Testez le: sauvez votre fichier modifié sous un autre nom, faites cp
-f fichier.orig fichier, puis testez avec la commande patch (voir
plus haut) mot de passe par défaut est phpcompta
9. Comment faire de la doc
Sous mandrake, ajouter les linuxdocs-tools avec la commande urpmi
linuxdoc-tools, pour les autres, je ne sais pas :(
Une fois, les linuxdoc tools installés il peut être nécessaire
d'installer d'autres outils comme jade, sgml,...
Il faudra en tout cas ajouter les tetex-dvips, textex-xdvi, latex2html
d'installer d'autres outils comme jade, sgml,... Il faudra en tout
cas ajouter les tetex-dvips, textex-xdvi, latex2html
De toute façon, vous pouvez imprimer le guide, pour le trouver faites
@ -192,6 +163,7 @@
en mode commande : rpm -qil linuxdoc-tools|grep guide
Jetez aussi un oeil sur les exemples, vous verrez c'est assez simple
en mode commande: rpm -qil linuxdoc-tools|grep example
@ -201,7 +173,8 @@
Ensuite, editez le fichier sgml, et surtout pensez à utilisez aspell
-H --lang=fr_FR check FA-fr.sgml pour véifier l'orthographe. Pour le
visionner, faites linuxdoc -B html FAQ.sgml soit linuxdoc -B rtf pour
avoir un fichier rtf...
avoir un fichier rtf... Puis faites un patch :-) ``Comment faire un
patch''
10. Comment contribuer ?
@ -214,48 +187,25 @@
Cela m'évite de devoir chaque fois changer sur le site de phpcompta
11. Install.sh ne fonctionne pas
Il est important de suivre la procédure pour l'installation voir
INSTALL-fr (dans le répertoire doc) !!
A. se connecter en tant que l'utilisateur Unix postgres et éxécuter la
commande createuser -d -a phpcompta puis exécuterinstall.sh en tant
que root. Il serait prudent de changer le propriétaire des fichiers
installer
12. l'erreur ERROR: CREATE USER: permission denied
11. recevoir des erreurs de création
l'erreur ERROR: CREATE USER: permission denied
createuser: creation of user "phpcompta" failed
voir question précédente ``install.sh''
13. recevoir des erreurs de création
ERROR: column "jrn_deb_max_line" is of type 'integer' but expression is
of type 'boolean' You will need to rewrite or cast the expression
ERROR: column "jrn_deb_max_line" is of type 'integer' but expression is
of type 'boolean' You will need to rewrite or cast the expression
ERROR: column "jrn_deb_max_line" is of type 'integer' but expression is
of type 'boolean' You will need to rewrite or cast the expression
ERROR: column "jrn_deb_max_line" is of type 'integer' but expression is
of type 'boolean' You will need to rewrite or cast the expression
ERROR: column "jrn_deb_max_line" is of type 'integer' but expression is
of type 'boolean' You will need to rewrite or cast the expression
ERROR: column "jrn_deb_max_line" is of type 'integer' but expression is
of type 'boolean' You will need to rewrite or cast the expression
ERROR: column "jrn_deb_max_line" is of type 'integer' but expression is
of type 'boolean' You will need to rewrite or cast the expression
ERROR: column "jrn_deb_max_line" is of type 'integer' but expression is
of type 'boolean' You will need to rewrite or cast the expression
Vous avez utilisé une version instable ! Cela a été corrigé reprenez
les fichiers du CVS
14. Erreur objet n'existe pas
12. Erreur objet n'existe pas
@ -272,10 +222,10 @@
Du à une commande drop sur un objet inexistant, n'y pretez pas atten-
tion
15. Comment appliquer un patch ?
13. Comment appliquer un patch ?
15.1. Quel patch utiliser ?
13.1. Quel patch utiliser ?
Dans certains cas, le dernier patch reprend les autres, il faudra lire
la release note du patch pour savoir ce qu'il faut appliquer avant.
@ -286,7 +236,7 @@
exemple path-r092-1.tgz, est le premier patch pour la release 0.9.2
15.2. Comment appliquer le patch
13.2. Comment appliquer le patch
Après l'avoir télécharger, allez dans le répertoire au-dessus du
répertoire qui installe PhpCompta, c'est-à-dire celui qui contient les
@ -298,24 +248,22 @@
16. Les entêtes de facture
14. Les entêtes de facture
Pourquoi les coordonnées de la société faisant la facture
n'apparraissent pas
Simplement parce que je n'ai pas eu le temps de le coder, pour
l'instant, vous devrez uniquement utiliser des factures préimprimées
15. Problèmes fréquents
17. Problèmes fréquents
17.1. Impossible de se logguer
15.1. Impossible de se logguer
Vous devez absolument avoir register_globale = on dans votre php.ini
et redémarrez Apache voir php-setting ``Php''
17.2. J'ai le message d'erreur 'cannot find file ....'
15.2. J'ai le message d'erreur 'cannot find file ....'
Dans votre php.ini, n'oubliez pas de mettre correctement le
include_patch voir php-setting ``Php''

View file

@ -56,10 +56,10 @@ postgres#pg_ctl -D /data/psql -o '-i' start
</p><p>
ne pas oublier d'ajouter dans le PATH, l'endroit où se trouve les
binaires de postgres
<quote>
<verb>
ex:
export PATH=$PATH:/opt/psql732/bin
</quote>
</verb>
</p>
<p>
Il est impératif d'avoir l'option -i, sinon le server HTTP ne pourra
@ -77,11 +77,6 @@ host all phpcompta 172.16.30.0 255.255.255.0 local
Il vaut mieux remplacer 172.16.30.0 par l'adresse du server HTTP, dans
le cas où vous utilisez un VirtualHost avec une adresse IP, c'est
cette adresse qu'il vous faudra mettre
il faut aussi que l'utilisateur qui installera ce programme existe pour postgres et
puisse créer des utilisateur et des bases de données la commande
<quote>
/opt/psql732/bin/createuser -a -d $USER
</quote>
</p>
</sect1>
<sect1>Optimisation
@ -96,16 +91,8 @@ Run-time Configuration.
zone mémoire est important car elle a trait à la mémoire utilisé pour les tris et les
jointures,! attention ce paramètre donne la consommation mémoire par session ! </item>
<item> Faites tourner régulièrement vacumdb -a -z grâce au crontab</item>
<item> Dans php.ini, bien utiliser les permanent_connection ainsi que la détection
des liens brisés. Cela permettra à Apache d'utiliser des connections existantes au lieu
dans créer des nouvelles, l'autre paramètre permet à Apache de détecter les connexions
inutilisées.
<verb>
pgsql.allow_persistent = On
pgsql.auto_reset_persistent = On
</verb>
</item>
<item> Dans postgres.conf, les shared_buffers: calculées en page de 8Kb, la valeur par défaut
<item> Dans postgres.conf, les shared_buffers: calculées en page de 8Kb,
la valeur par défaut
est de seulement 64, ce qui correspond à 512Kb, une meilleure valeur est 640 </item>
<item> à compléter </item>
</itemize>
@ -134,14 +121,6 @@ votre mot de passe soit avec le fichier .pgpass dont la syntaxe est
N'oubliez pas de mettre ce fichier en mode 600 !!!! Pour executer sans demande
de mot de passe host = localhost
Ensuite soit vous utilisez la variable d'environnement PGPASSWORD qui contient
votre mot de passe soit avec le fichier .pgpass dont la syntaxe est
<verb>
host:port:database:username:password
</verb>
N'oubliez pas de mettre ce fichier en mode 600 !!!! Pour executer sans demande
de mot de passe host = localhost
</sect1>
</sect>
<sect> Apache
@ -249,28 +228,40 @@ include_path=".:../include:addon"
</p>
</sect1>
</sect>
<sect>Installation de PhpCompta
<sect>Installation de PhpCompta
<sect1>Première installation
<p>
On suppose que postgresql est installé correctement
Etape
<p>Etape
<itemize>
<item> Se connecter en tant que postgres et taper les commandes
<verb> createuser -d phpcompta<
<verb>
createuser -d -P dany phpcompta
createdb -O phpcompta phpcompta
</verb>
<item>Décompacter le package dans le répertoire de votre choix, et configurer Apache pour qu'il
puisse accèder au sous-répertoire html. (voir plus haut la directive DocumentRoot)
<item> Vous devez vérifier que le chemin de psql et vous indiquez la bonne valeur dans
le fichier html/admin/variable.php
<item>
Vous devez connecter sur http://votre_server/admin/setup.php
</itemize>
</sect1>
<sect1>Mise à jour
<p>Etape
<itemize>
<item>Décompacter le package dans le répertoire de votre choix,
et configurer Apache pour qu'il
puisse accèder au sous-répertoire html. (voir plus haut la directive DocumentRoot)
<item>
Vous devez connecter sur http://votre_server/admin/setup.php
</itemize>
</sect1>
</sect>
<sect>Conclusion
<p>
Voilà maintenant, il vous suffit de faire de vous connecter
sur http://votre_server/admin/setup.php; cette page installera
tout ce qu'il faut, testera votre installation et surtout met à jour
En vous connectant à l'adresse
http://votre_server/admin/setup.php; vous installerez
tout ce qu'il faut, testerez votre installation et surtout met à jour
les bases de données dans le cas d'une mise à jour. En cas de problème,
signalez-le nous.
@ -281,17 +272,4 @@ IMPORTANT Vous devez effacer le r
</sect>
<sect>Remarque
<p>
<itemize>
<item>Il faut créer le répertoire où seront mis l'application elle-même,
ici, les fichiers seront dans /home/httpd/compta, l'endroit est défini dans setenv.sh. Créer ce
répertoire, le propriétaire de répertoire doit être le même que
celui qui installera l'application. Cet utiliserateur devra
aussi avoir le privilège de créer un utilisateur pour postgres
(fonction createuser).
<item>Adapter le fichiers setenv.sh selon vos besoins
</itemize>
</sect>
</article>

View file

@ -649,7 +649,7 @@ root 24555 23968 0 22:56 pts/0 00:00:00 grep httpd
<p>
Dans PhpCompta, le module de sécurité permet d'établir quel
utilisateur peut accéder à quel dossier, ce qu'il peut y faire,
les journaux qu'il peut accéder. Chaque fois qu'une page est chargée,
les journaux qu'il peut accéder... Chaque fois qu'une page est chargée,
le mot de passe et le login utilisateur sont vérifiés pour savoir si
primo il a accès a ce qu'il demandé à faire et secundo si son compte
est actif et que le mot de passe fourni est valide. Ces valeurs sont

View file

@ -1,16 +1,36 @@
<style type="text/css">
<!--
body {
font-family:sans-serif;
font-size:12px;
color:blue;
}
h2.info {
color:green;
font-size:20px;
font-family:sans-serif;
}
h2.error {
color:red;
font-size:20px;
font-family:sans-serif;
}
.warning {
font-family:sans-serif;
font-size:12px;
color:red;
}
.info {
color:green;
font-size:12px;
font-family:sans-serif;
}
-->
</style>
<p align="center">
<IMG SRC="../image/logo7.jpg" alt="Logo">
</p>
<?
/*
* This file is part of PhpCompta.
@ -104,7 +124,10 @@ function ExecuteScript($p_cn,$script) {
// magic_quotes_runtime = Off
// magic_quotes_sybase = Off
// include_path
// register_global
?>
<h2>Php setting</h2>
<?
foreach (array('magic_quotes_gpc','magic_quotes_runtime') as $a) {
if ( ini_get($a) == false ) print $a.': Ok <br>';
@ -119,6 +142,7 @@ if ( ereg("\.\.\/include",ini_get('include_path')) == false )
print 'include_path : ok ('.ini_get('include_path').')<br>';
echo '<p class="info">php.ini est bien configuré</p>';
$cn=DbConnect(-2,'phpcompta');
@ -130,8 +154,49 @@ puis la base de donn
exit();
}
?>
<h2>Database Setting</h2>
<?
$sql="select name,setting
from pg_settings
where
name in ('effective_cache_size','shared_buffers','sort_mem')";
$Res=ExecSql($cn,$sql);
$flag=0;
for ($e=0;$e<pg_NumRows($Res);$e++) {
$a=pg_fetch_array($Res,$e);
switch ($a['name']){
case 'effective_cache_size':
if ( $a['setting'] < 1000 ){
print '<p class="warning">Attention le paramètre effective_cache_size est de '.
$a['setting']."</p>";
$flag++;
}
break;
case 'shared_buffers':
if ( $a['setting'] < 640 ){
print '<p class="warning">Attention le paramètre shared_buffer est de '.
$a['setting']."</p>";
$flag++;
}
break;
case 'sort_mem':
if ( $a['setting'] < 8192 ){
print '<p class="warning">Attention le paramètre sort_mem est de '.
$a['setting']."</p>";
$flag++;
}
break;
}
}
if ( $flag == 0 ) {
echo '<p class="info">La base de données est bien configurée</p>';
} else {
echo '<p class="warning">Il y a '.$flag.' paramètre qui sont trop bas</p>';
}
?>
<FORM action="setup.php" METHOD="post">
<input type="submit" name="go" value="Prêt à commencer la mise à jour ?">
<input type="submit" name="go" value="Prêt à commencer la mise à jour ou l'installation?">
</form>
<?
if ( ! isset($_POST['go']) )