Vous êtes ici : Accueil / Debian GNU/Linux / Applications Web / Gestion de contenu / Installer Cosmo CMS sur Debian

Installer Cosmo CMS sur Debian

Par Pierre-Yves Landuré Dernière modification 02/08/2017 13:49

Cosmo CMS est un système de gestion de contenu spécialisé dans la création de sites à page unique.

Ce guide est testé sur:

  • Debian 7.0 Wheezy

Ce guide est testé avec ces versions de Cosmo CMS:

  • 1.0.0

Pré-requis

Ce guide nécessite:

Paramètres

Renseignez le nom de domaine où sera disponible l'application:

domain="www.domain.com"

Renseignez le nom d'hôte du serveur MySQL:

mysqlHost="localhost"

Si le serveur MySQL n'est pas local, l'outil mysql-tools essaiera de s'y connecter avec le client MySQL, ou, en cas d'échec de connexion, via une connexion SSH.

Renseignez le nom du certificat SSL à utiliser pour chiffrer l'application avec HTTPS (créé via la procédure Créer un certificat SSL / TLS sur Debian ou via Let's Encrypt) (optionnel, recommandé):

sslKeyName="auto"

Installation

Détectez le proxy de commande (command ou sudo):

cmdProxy='command'
command type -f 'sudo' &>'/dev/null' && cmdProxy='sudo'

Déterminez le chemin d'installation:

installPath="/var/lib/cosmocms/${domain}"

Assurez-vous que le dossier parent existe:

${cmdProxy} mkdir -p "${installPath}"

Préparation de l'environnement

Installez les logiciels nécessaires:

${cmdProxy} apt-get install php5-mysql php5-gd

Rechargez la configuration de PHP:

${cmdProxy} php-tools --reload

Mise en place de l'application

Téléchargez la dernière version de l'application:

command wget 'https://raw.github.com/biapy/howto.biapy.com/master/various/sf-downloader' \
--quiet --no-check-certificate --output-document='/tmp/sf-downloader'
source="$(${cmdProxy} bash '/tmp/sf-downloader' --tgz \
--output-directory="${installPath}" \
--strip-components=1 \
--generic='https://github.com/CosmoCMS/Cosmo/releases' \
    'cosmocms' '[0-9].VERSION.tar.gz')"

Autorisez la modification du contenu de la racine du site par le serveur:

${cmdProxy} chown www-data:www-data "${installPath}"

Autorisez la modification par le serveur des caches et emplacements de données:

while read writeablePath; do
${cmdProxy} chown -R www-data:www-data "${installPath}/${writeablePath}"
done <<< "uploads
core/app/autoload.php"

Création de la base de données

Créez la base de données:

command mysql-tools --server="${mysqlHost}" --with-ssh \
--auto-hosts --db-prefix="cosmocms" --create "${domain//[\.-]/_}"

Notez les informations de connexion fournies par la commande.

Mise en place de l'hôte virtuel

Créez la configuration du serveur HTTP pour le domaine:

if [[ -n "${sslKeyName}" && ( -e "/etc/ssl/private/${sslKeyName}.key" || "${sslKeyName}" = 'auto' ) ]]; then
  ${cmdProxy} a2tools --ssl="${sslKeyName}" --overrides='All' "${domain}" "${installPath}"
else
${cmdProxy} a2tools --overrides='All' "${domain}" "${installPath}"
fi

L'installation est maintenant disponible sur le domaine.

Accédez à la procédure d'installation via l'URL fournie par:

echo "http://${domain}/install.php"

Sécurisation

Une fois la procédure d'installation terminée, sécurisez l'installation:

${cmdProxy} chown root:root "${installPath}/core/app/autoload.php"
${cmdProxy} rm "${installPath}/install.php"

Sauvegardes

Sauvegardez l'installation avec Backup Manager (voir Installer et configurer Backup Manager sur Debian):

command backup-manager-tools add "${installPath}"

N'oubliez pas de sauvegarder la base de données (voir Installer et configurer MySQL sur Debian).

Remerciements