apt update
apt upgrade -y
apt install nginx mariadb-server mariadb-client php-fpm php-mysql php-zip php-curl php-xml php-gd php-mbstring wget unzip -y
systemctl start nginx
systemctl enable nginx
systemctl start mariadb
systemctl enable mariadb
mariadb-secure-installation
Répondre ainsi :
mysqladmin -uroot create concretedb
mysql -uroot -e"GRANT ALL ON concretedb.* TO admin@localhost IDENTIFIED BY 'P@ssw0rd'"
Supprimer la page par défaut de Nginx :
rm /var/www/html/index.nginx-debian.html
Télécharger Concrete CMS :
cd /tmp
wget https://www.concretecms.org/download_file/97928843-11e6-4830-a885-5f3019be8b02/2658
mv 2658 concrete.zip
unzip concrete.zip
rm concrete.zip
cp -r concrete*/* /var/www/html/
chown -R www-data:www-data /var/www/html
chmod -R 755 /var/www/html
Renommer l'ancien fichier et créer le nouveau :
mv /etc/nginx/sites-available/default /etc/nginx/sites-available/default.BAK
nano /etc/nginx/sites-available/default
Ajouter ceci au fichier :
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.4-fpm.sock;
}
location ~* \.(ini|xml|sql)$ {
deny all;
}
error_log /var/log/nginx/concrete_error.log;
access_log /var/log/nginx/concrete_access.log;
}
Recharger Nginx :
systemctl reload nginx
Accéder à Concrete CMS via navigateur web :
http://IP-SERVEUR
apt install openssl
mkdir /etc/nginx/tls
openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /etc/nginx/tls/concrete.key \
-out /etc/nginx/tls/concrete.crt
chmod 600 /etc/nginx/tls/concrete.key
Modifier /etc/nginx/sites-available/default :
server {
listen 443 ssl default_server;
listen [::]:443 ssl default_server;
root /var/www/html;
index index.php index.html index.htm;
ssl_certificate /etc/nginx/tls/concrete.crt;
ssl_certificate_key /etc/nginx/tls/concrete.key;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.4-fpm.sock;
}
location ~* \.(ini|xml|sql)$ {
deny all;
}
error_log /var/log/nginx/concrete_error.log;
access_log /var/log/nginx/concrete_access.log;
}
Recharger Nginx pour activer HTTPS :
systemctl reload nginx