diff options
| author | polo <ordipolo@gmx.fr> | 2025-12-23 23:20:03 +0100 |
|---|---|---|
| committer | polo <ordipolo@gmx.fr> | 2025-12-23 23:20:03 +0100 |
| commit | 0ec35c94c77a36894ce7d30fce290412f25b3e0e (patch) | |
| tree | e3cea70569f08b347aba3a5f5d951958ce408420 /src/installation.php | |
| parent | 4c25387cb0f8798bd04b74306d79ec6999fe08ee (diff) | |
| download | cms-0ec35c94c77a36894ce7d30fce290412f25b3e0e.tar.gz cms-0ec35c94c77a36894ce7d30fce290412f25b3e0e.tar.bz2 cms-0ec35c94c77a36894ce7d30fce290412f25b3e0e.zip | |
config-template.ini, droits dossier user_data
Diffstat (limited to 'src/installation.php')
| -rw-r--r-- | src/installation.php | 42 |
1 files changed, 22 insertions, 20 deletions
diff --git a/src/installation.php b/src/installation.php index 78f1768..2bef8e5 100644 --- a/src/installation.php +++ b/src/installation.php | |||
| @@ -10,7 +10,7 @@ use App\Entity\Asset; | |||
| 10 | use Doctrine\Common\Collections\ArrayCollection; | 10 | use Doctrine\Common\Collections\ArrayCollection; |
| 11 | use Doctrine\ORM\EntityManager; | 11 | use Doctrine\ORM\EntityManager; |
| 12 | 12 | ||
| 13 | function phpDependancies() | 13 | function phpDependancies(): void |
| 14 | { | 14 | { |
| 15 | $flag = false; | 15 | $flag = false; |
| 16 | //$extensions = ['pdo_mysql', 'mbstring', 'ctype', 'json', 'tokenizer', 'zip', 'dom']; // les 5 premières sont pour doctrine | 16 | //$extensions = ['pdo_mysql', 'mbstring', 'ctype', 'json', 'tokenizer', 'zip', 'dom']; // les 5 premières sont pour doctrine |
| @@ -33,31 +33,33 @@ function phpDependancies() | |||
| 33 | } | 33 | } |
| 34 | } | 34 | } |
| 35 | 35 | ||
| 36 | // inutilisée pour l'instant | ||
| 37 | function installation(): void | 36 | function installation(): void |
| 38 | { | 37 | { |
| 39 | /* -- droits des fichiers et dossiers -- */ | 38 | // -- droits des fichiers et dossiers -- |
| 40 | $droits_dossiers = 0700; | 39 | $droits_dossiers = 0700; |
| 41 | $droits_fichiers = 0600; | 40 | $droits_fichiers = 0600; |
| 42 | 41 | ||
| 43 | // accès interdit en HTTP | 42 | if(!file_exists('user_data')){ |
| 44 | if(!file_exists('../config/.htaccess')){ | 43 | // créer le dossier user_data |
| 45 | $contenu = <<< HTACCESS | 44 | mkdir('user_data/'); |
| 46 | <Files "config.ini"> | 45 | chmod('user_data/', $droits_dossiers); |
| 47 | Order Allow,Deny | 46 | echo '<p style="color: red;">Le dossier public/user_data introuvable et le serveur n\'a pas la permission de le créer.<br> |
| 48 | Deny from all | 47 | Pour faire ça bien:<br>sudo -u "serveur web" mkdir /chemin/du/site/public/user_data</p> |
| 49 | </Files> | 48 | <p>Aide: "serveur web" se nomme "www-data" sur debian et ubuntu, il s\'appelera "http" sur d\'autres distributions.</p>'; |
| 50 | HTACCESS; | 49 | die; |
| 50 | } | ||
| 51 | 51 | ||
| 52 | $fichier = fopen('../config/.htaccess', 'w'); | 52 | if(!file_exists('../config/config.ini')){ |
| 53 | fputs($fichier, $contenu); | 53 | // aide à la création du config.ini |
| 54 | fclose($fichier); | 54 | echo '<p>Ce fichier contient les codes de la base de données et quelques paramètres utilisés pour créer les liens internes.<br> |
| 55 | chmod('../config/.htaccess', $droits_fichiers); | 55 | Un modèle est disponible, il s\'agit du fichier config/config-template.ini</p> |
| 56 | //echo("danger<br>pas de .htaccess dans config<br>prévenez le responsable du site"); | 56 | <p>Quand vous aurez terminé votre config.ini, donnez-lui si possible des droits 600.</p>'; |
| 57 | //die; | 57 | die; |
| 58 | } | 58 | } |
| 59 | } | ||
| 59 | 60 | ||
| 60 | // accès limité en local (600) pour config.ini | 61 | /* |
| 62 | // droits du config.ini | ||
| 61 | if(substr(sprintf('%o', fileperms('../config/config.ini')), -4) != 600){ | 63 | if(substr(sprintf('%o', fileperms('../config/config.ini')), -4) != 600){ |
| 62 | chmod('../config/config.ini', $droits_fichiers); | 64 | chmod('../config/config.ini', $droits_fichiers); |
| 63 | } | 65 | } |
| @@ -82,7 +84,7 @@ HTACCESS; | |||
| 82 | die; | 84 | die; |
| 83 | } | 85 | } |
| 84 | } | 86 | } |
| 85 | } | 87 | */ |
| 86 | 88 | ||
| 87 | // création d'un site minimal avec une page d'accueil à la toute 1ère visite du site | 89 | // création d'un site minimal avec une page d'accueil à la toute 1ère visite du site |
| 88 | // fonctiona appelée après la première requête envoyée en BDD, | 90 | // fonctiona appelée après la première requête envoyée en BDD, |
