2026-02-18 12:27:38 +01:00
2026-02-16 07:59:52 +01:00
2026-02-16 07:59:52 +01:00
2026-02-16 07:59:52 +01:00
2026-02-16 07:59:52 +01:00
2025-10-18 18:17:34 +02:00
2025-12-07 23:10:08 +01:00
2026-02-06 20:20:01 +01:00
2026-02-06 20:20:01 +01:00
2026-02-18 12:27:38 +01:00
2025-12-07 23:10:08 +01:00
2026-02-18 12:20:19 +01:00
2026-02-06 23:21:43 +01:00
2026-02-06 23:21:43 +01:00
env
2026-02-16 08:52:47 +01:00

Stack

  • NUXT 4
  • VueJS 3.5

Dev du site en local

NUXT

Démarrer NUXT

Site de développement

URL

https://2025.orchestre-ile.com/

TODO

Serveur web

Créer un vrai /security.txt (ou /.well-known/security.txt) au lieu de le renvoyer en 404. dans le fichier de conf NGINX /etc/nginx/sites-available$ sudo nano wondif_2025 # Fichier standard optionnel (si tu ne le fournis pas) location = /security.txt { return 404; }

METTRE EN LIGNE LE DEV AVEC GITEA

Serveur GITEA https://git.parisweb.art/

Du dev vers Gitea

git add . git commit -m "Mon message de commit" git push origin main

Avec VCS

  1. Onglet Source Control
  2. Vérifie la liste Changes
  3. Clique sur + (stage)
    • fichier par fichier ou
      • à côté de Changes (tout)
  4. Renseigne un message de commit
  5. Clique sur ✔️ Commit
  6. clique sur Sync Changes

Du Gitea vers VPS

cd /var/www/wondif_vue

git pull origin main # récupère le dernier code npm ci # installe / met à jour les dépendances npm run build # rebuild Nuxt pm2 restart wondif_vue # redémarre le process

STRAPI

URL de PROD

bo.orchestre-ile.com

après modifications des fichiers src/... on rebuild strapiwww

cd strapi_wondif/ NODE_ENV=production npm run build pm2 list pm2 restart strapi_wondif pm2 list

dev en local

vérifier le json de l'enpoint strapi

http://localhost:3000/api/strapi/concerts http://localhost:3000/api/strapi/concerts?populate=* http://localhost:3000/api/strapi/concerts?populate[artistes_ondif_concert][populate]=postes_artiste_ondif http://localhost:3000/api/strapi/concerts?populate=*&populate[artistes_ondif_concert][populate]=postes_artiste_ondif http://localhost:3000/api/strapi/concerts?populate[saison_concert]=true&populate[genre_concert]=true&populate[type_audience_concert]=true&populate[direction_ondif_concert][populate]=postes_artiste_ondif&populate[direction_invite_concert][populate]=postes_artiste_invite&populate[artistes_ondif_concert][populate]=postes_artiste_ondif&populate[artistes_invite_concert][populate]=postes_artiste_invite

API pour avoir tout de Concerts http://localhost:3000/api/strapi/concerts?populate[saison_concert]=true&populate[genre_concert]=true&populate[type_audience_concert]=true&populate[direction_ondif_concert][populate]=postes_artiste_ondif&populate[direction_invite_concert][populate]=postes_artiste_invite&populate[artistes_ondif_concert][populate]=postes_artiste_ondif&populate[artistes_invite_concert][populate]=postes_artiste_invite&populate[image_illustration_concert]=true&populate[images_concert]=true&populate[videos_concert]=true&populate[audios_concert]=true&populate[programme_concert]=true&populate[representation_concert][populate]=lieu_representation&populate[liens_youtube_concert]=true

/api/strapi/concerts? populate[saison_concert]=true& populate[genre_concert]=true& populate[type_audience_concert]=true& populate[direction_ondif_concert][populate]=postes_artiste_ondif& populate[direction_invite_concert][populate]=postes_artiste_invite& populate[artistes_ondif_concert][populate]=postes_artiste_ondif& populate[artistes_invite_concert][populate]=postes_artiste_invite& populate[image_illustration_concert]=true& populate[images_concert]=true& populate[videos_concert]=true& populate[audios_concert]=true& populate[programme_concert]=true& populate[representation_concert][populate]=lieu_representation& populate[liens_youtube_concert]=true

Niveau 1 Niveau 2 Niveau 3
saison_concert
genre_concert
type_audience_concert
direction_ondif_concert postes_artiste_ondif
direction_invite_concert postes_artiste_invite
artistes_ondif_concert postes_artiste_ondif
artistes_invite_concert postes_artiste_invite
A B C
A B C
A B C
A B C
A B C
A B C
A B C

CSS

LAYOUT

@media (min-width: 0px) { max-width: 100%; } @media (min-width: 600px) { max-width: 580px; } @media (min-width: 700px) { max-width: 660px; } @media (min-width: 800px) { max-width: 780px; }
@media (min-width: 900px) { max-width: 860px; } @media (min-width: 1000px) { max-width: 950px; } @media (min-width: 1100px) { max-width: 1020px; } @media (min-width: 1200px) { max-width: 1100px; } @media (min-width: 1300px) { max-width: 1200px; } @media (min-width: 1400px) { max-width: 1300px; } @media (min-width: 1500px) { max-width: 1400px; }

débordement = les identifier visuellement

code javascript, à coller dans la partie "console" du navigateur, pour mettre cette ligne outile rouge et le backgroud à tous les éléments de body pour voir les débordements Array.from(document.querySelectorAll('body > *')).forEach(el => { el.style.outline = '1px solid red'; el.style.backgroundColor = 'rgba(255, 0, 0, 0.3)'; // Utilisation de rgba pour une semi-transparence });

1  sudo nano ~/.bashrc
2  exit
3  ll
4  date
5  sudo ln -sf /usr/share/zoneinfo/Europe/Paris /etc/localtime
6  date
7  cd /
8  sudo apt update
9  apt list --upgradable

10 sudo apt upgrade 11 apt list --upgradable 12 sudo nano /etc/ssh/sshd_config 13 sudo systemctl restart sshd 14 exit 15 sudo apt install fail2ban 16 cd /etc/fail2ban/ 17 ll 18 sudo nano /etc/fail2ban/jail.conf 19 sudo service fail2ban reload 20 sudo service fail2ban status 21 sudo service fail2ban start 22 sudo service fail2ban status 23 fail2ban-client status 24 ll 25 www 26 cd / 27 ll 28 www 29 cd var 30 ll 31 date 32 cd / 33 sudo apt update 34 apt list --upgradable 35 sudo apt upgrade 36 cd /etc/fail2ban/ 37 sudo service fail2ban status 38 systemctl status nginx 39 sudo apt install nginx 40 systemctl status nginx 41 sudo systemctl enable nginx 42 sudo systemctl is-enabled nginx 43 sudo nano /etc/nginx/nginx.conf 44 sudo systemctl reload nginx 45 systemctl status nginx 46 www 47 ll 48 cd .. 49 ll 50 cd www 51 ll 52 cd html/ 53 ll 54 cd www 55 ll 56 www 57 ll 58 sudo mkdir wondif_2025 59 ll 60 cd wondif_2025/ 61 sudo nano index.html 62 ll 63 more index.html 64 cd /etc/nginx/sites-available 65 ll 66 de default 67 more default 68 sudo nano wondif_2025 69 ll 70 more wondif_2025 71 cd /etc/nginx/sites-enabled 72 ll 73 sudo ln -s /etc/nginx/sites-available/wondif_2025 /etc/nginx/sites-enabled/ 74 ll 75 sudo nginx -t 76 systemctl restart nginx 77 systemctl status nginx 78 www 79 ll 80 cd wondif_2025/ 81 ll 82 pwd 83 cd /etc/nginx/sites-available 84 ll 85 more wondif_2025 86 www 87 ll 88 cd wondif_2025/ 89 ll 90 sudo nano index.html 91 www 92 curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash 93 exit 94 python3 --version 95 sudo apt install certbot python3-certbot-nginx 96 cd /etc/nginx/sites-available 97 ll 98 sudo nano strapi_wondif 99 cd /etc/nginx/sites-enabled 100 ll 101 sudo ln -s /etc/nginx/sites-available/strapi_wondif /etc/nginx/sites-enabled/ 102 ll 103 sudo nginx -t 104 systemctl restart nginx 105 systemctl status nginx 106 cd /etc/nginx/sites-available 107 sudo certbot --nginx -d 2025.orchestre-ile.com 108 ll 109 more wondif_2025 110 sudo certbot --nginx -d bo.orchestre-ile.com 111 ll 112 more strapi_wondif 113 sudo certbot certificates 114 sudo nginx -t 115 systemctl restart nginx 116 systemctl status nginx 117 ll 118 sudo nano wondif_2025 119 systemctl restart nginx 120 systemctl status nginx 121 www 122 nvm --version 123 nvm ls-remote 124 nvm install 22.18.0 125 node -v 126 corepack enable yarn 127 yarn -v 128 www 129 yarn global add pm2 130 pm2 start 131 pm2 list 132 cd / 133 pm2 list 134 yarn global bin 135 more ~/.bashrc 136 sudo nano ~/.bashrc 137 nano ~/.bashrc 138 source ~/.bashrc 139 pm2 start 140 pm2 list 141 mysql -u root -p 142 cd / 143 ll 144 sudo apt install gnupg 145 cd /home/debian 146 wget https://dev.mysql.com/get/mysql-apt-config_0.8.34-1_all.deb // version du 04/08/2025 147 ll 148 sudo dpkg -i mysql-apt-config* 149 apt update 150 sudo apt update --allow-insecure-repositories 151 sudo apt-get upgrade 152 sudo apt update 153 sudo apt install mysql-server 154 sudo systemctl status mysql 155 sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf 156 sudo systemctl restart mysql 157 sudo systemctl status mysql 158 mysql -u root -p 159 sav 160 ll 161 sudo nano strapi_wondif 162 sudo nginx -t 163 sudo nano strapi_wondif 164 www 165 ll 166 cd strapi_wondif/ 167 ll 168 rm strapi_wondif.js 169 ll 170 sav 171 ll 172 sudo nginx -t 173 more strapi_wondif 174 sudo nano strapi_wondif 175 sudo nginx -t 176 sudo nano strapi_wondif 177 systemctl restart nginx 178 systemctl status nginx 179 www 180 ll 181 cd strapi_wondif/ 182 ll 183 more .env 184 www 185 ll 186 cd /var 187 ll 188 chown debian www 189 ll 190 sudo chown debian www 191 wwww 192 www 193 ll 194 yarn create strapi 195 ll 196 cd strapi_wondif/ 197 ll 198 sudo nano strapi_wondif.js 199 yarn strapi_wondif start 200 ll 201 more package.json 202 NODE_OPTIONS="--max-old-space-size=2048" NODE_ENV=production yarn build 203 yarn run start 204 ll 205 pm2 start yarn --name strapi_wondif -- start 206 pm2 logs strapi_wondif 207 pm2 list 208 pm2 logs strapi_wondif 209 pm2 list 210 pm2 save 211 pm2 startup systemd 212 sudo env PATH=$PATH:/home/debian/.nvm/versions/node/v22.18.0/bin /home/debian/.config/yarn/global/node_modules/pm2/bin/pm2 startup systemd -u debian --hp /home/debian 213 pm2 list 214 ll 215 date 216 cd / 217 sudo apt update 218 sudo apt list --upgradable 219 sudo apt upgrade 220 sudo apt update 221 sudo iptables -L 222 sudo apt install fail2ban 223 cd /etc/fail2ban/ 224 ls 225 ll 226 cd /var/log/fail2ban.log 227 cd /var/log/ 228 ll 229 more fail2ban.log 230 fail2ban-client status 231 sudo fail2ban-client status 232 sudo apt-get install net-tools 233 netstat -a 234 ls 235 cd / 236 ls 237 cd var 238 ls 239 ll 240 cd www 241 ll 242 sav 243 ll 244 more wondif_2025 245 ll 246 sudo nano wondif_media 247 more wondif_media 248 sudo nano wondif_media 249 more wondif_media 250 cd /etc/nginx/sites-enabled 251 sudo ln -s /etc/nginx/sites-available/wondif_media /etc/nginx/sites-enabled/ 252 ll 253 sudo certbot --nginx -d media.orchestre-ile.com 254 sav 255 ll 256 more wondif_media 257 sudo nginx -t 258 systemctl restart nginx 259 systemctl status nginx 260 www 261 ll 262 pm2 263 pm2 list 264 ls 265 cd strapi_wondif/ 266 ll 267 pwd 268 npm install @strapi/provider-upload-aws-s3 --save 269 ls 270 ll 271 cd config/ 272 ll 273 more plugins.js 274 sudo nano plugins.js 275 ll 276 cd ;; 277 cd.. 278 ll 279 cd .. 280 ll 281 sudo nano .env 282 npm run build 283 npm run start 284 ll 285 pm2 list 286 pm2 restart strapi_wondif 287 ll 288 cd config/ 289 ll 290 more plugins.js 291 sudo nano plugins.js 292 pm2 restart strapi_wondif 293 sudo nano plugins.js 294 sav 295 ll 296 ls 297 sudo nano strapi_wondif 298 sudo nano wondif_media 299 sudo nginx -t 300 sudo systemctl reload nginx 301 pm2 restart strapi_wondif 302 www 303 ll 304 cd strapi_wondif/ 305 ll 306 cd config/ 307 ll 308 sudo nano middlewares.js 309 pm2 restart strapi_wondif 310 pm2 stop strapi_wondif 311 npm run build 312 pm2 start strapi_wondif 313 www 314 ll 315 cd wondif_2025/ 316 pwd 317 ll 318 sav 319 ll 320 more wondif_2025 321 www 322 ll 323 cd wondif_2025/ 324 ll 325 cd .. 326 ll 327 mv wondif_2025 wondif_2025_old 328 ll 329 git clone git@git.parisweb.art:gitea_admin/wondif_vue.git 330 sudo apt update 331 sudo apt install git -y 332 git --version 333 git clone git@git.parisweb.art:gitea_admin/wondif_vue.git 334 git clone https://git.parisweb.art/gitea_admin/wondif_vue 335 ll 336 cd wondif_vue/ 337 ll 338 sav 339 ll 340 sudo nano wondif_2025 341 sudo nginx -t 342 sudo systemctl reload nginx 343 www 344 ll 345 cd wondif_vue/ 346 ll 347 sudo nano .env 348 npm ci 349 npm run build 350 ll 351 pm2 list 352 pm2 start npm --name "wondif_vue" -- run start 353 pm2 save 354 pm2 logs wondif_vue 355 curl http://127.0.0.1:3000 356 sav 357 ll 358 sudo nano wondif_2025 359 www 360 ll 361 cd wondif_vue/ 362 ll 363 wondif_vue/ 364 cat package.json 365 sudo nano package.json 366 cat package.json 367 npm run build 368 pm2 list 369 pm2 stop wondif_vue 370 pm2 start wondif_vue 371 pm2 logs wondif_vue 372 curl http://127.0.0.1:3000 373 sav 374 ll 375 more wondif_2025 376 sudo nano wondif_2025 377 sudo nginx -t 378 sudo systemctl reload nginx 379 more wondif_2025 380 www 381 ll 382 cd wondif_vue/ 383 ll 384 cd public/ 385 ll 386 cd img/ 387 ll 388 cd photos/ 389 ll 390 mv zaho_2.jpg zaho.jpg 391 ll 392 cd /var/www/wondif_vue 393 ll 394 npm ci 395 npm run build 396 pm2 restart wondif_vue 397 git pull origin main 398 rm public/img/photos/zaho.jpg 399 git pull origin main 400 npm ci 401 npm run build 402 ll 403 more .env 404 pm2 list 405 pm2 logs wondif_vue 406 cd /home/debian/.pm2/logs/ 407 ll 408 more strapi-wondif-error.log 409 ll 410 truncate -s 0 strapi-wondif-error.log 411 ll 412 more strapi-wondif-out.log 413 ll 414 truncate -s 0 strapi-wondif-out.log 415 ll 416 more wondif-vue-error.log 417 ll 418 truncate -s 0 wondif-vue-error.log 419 more wondif-vue-out.log 420 ll 421 truncate -s 0 wondif-vue-out.log 422 www 423 ll 424 cd wondif_vue/ 425 ll 426 cd app 427 ll 428 cd components/ 429 ll 430 more header_content.vue 431 ll 432 more header_full.vue 433 ll 434 cd .. 435 ll 436 more app.vue 437 ll 438 cd pages/ 439 ll 440 more index.vue 441 ll 442 more agenda.vue 443 www 444 ll 445 cd wondif_vue/ 446 ll 447 cd app/ 448 ll 449 cd pages/ 450 ll 451 more index.vue 452 cd .. 453 ll 454 cd components/ 455 ll 456 more header_full.vue 457 ll 458 more header_content.vue 459 www 460 ll 461 cd wondif_vue/ 462 ll 463 sav 464 ll 465 more wondif_2025 466 sudo adduser --disabled-password --gecos "" deploy 467 sudo usermod -aG www-data deploy 468 cd / 469 ll 470 cd srv 471 ll 472 sudo ll 473 sudo ls 474 ls 475 ll 476 cd 2025 477 sudo mkdir -p /srv/apps/wondif_vue 478 ll 479 sudo chown -R deploy:deploy /srv/apps/wondif_vue 480 ll 481 sudo -u deploy ssh-keygen -t ed25519 -C "deploy@server" -f /home/deploy/.ssh/id_ed25519 482 sudo -u deploy cat /home/deploy/.ssh/id_ed25519.pub 483 sudo -u deploy ssh -T git@git.parisweb.art 484 sudo -u deploy ssh -T gitea_admin@git.parisweb.art 485 sudo -u deploy ssh -T git@git.parisweb.art 486 sudo -u deploy ssh -T git@git.parisweb.art; echo "EXIT=$?" 487 cd /home 488 ll 489 cd deploy/ 490 ll 491 sudo cd deploy/ 492 sudo -u deploy rm -f /home/deploy/.ssh/id_ed25519 493 sudo -u deploy rm -f /home/deploy/.ssh/id_ed25519.pub 494 sudo -u deploy rm -f /home/deploy/.ssh/known_hosts 495 sudo -u deploy ls -la /home/deploy/.ssh 496 sudo -u deploy ls -la /home/deploy/ 497 sudo -u deploy ssh-keygen -t ed25519 -C "deploy@bookstore" -f /home/deploy/.ssh/id_ed25519 498 sudo -u deploy cat /home/deploy/.ssh/id_ed25519.pub 499 sudo -u deploy rm -f /home/deploy/.ssh/id_ed25519 500 sudo -u deploy rm -f /home/deploy/.ssh/id_ed25519.pub 501 sudo -u deploy rm -f /home/deploy/.ssh/known_hosts 502 sudo -u deploy ls -la /home/deploy/.ssh 503 sudo -u deploy ssh-keygen -t ed25519 -C "deploy@wondif_vue" -f /home/deploy/.ssh/id_ed25519 504 sudo -u deploy cat /home/deploy/.ssh/id_ed25519.pub 505 sudo -u deploy ssh -T git@git.parisweb.art 506 sudo ss -lntp | grep -E ':22|:2222|:3000|:3022|:2200' 507 sudo -u deploy rm -f /home/deploy/.ssh/id_ed25519 508 sudo -u deploy rm -f /home/deploy/.ssh/id_ed25519.pub 509 sudo -u deploy rm -f /home/deploy/.ssh/known_hosts 510 sudo -u deploy ls -la /home/deploy/.ssh 511 sudo -u deploy nano /home/deploy/.netrc 512 sudo -u deploy more /home/deploy/.netr 513 sudo chmod 600 /home/deploy/.netrc 514 sudo chown deploy:deploy /home/deploy/.netrc 515 sudo -u deploy git ls-remote https://git.parisweb.art/gitea_admin/wondif_vue 516 cd /srv 517 ll 518 cd apps/ 519 ll 520 cd wondif_vue/ 521 ll 522 sudo -u deploy git clone https://git.parisweb.art/gitea_admin/wondif_vue /srv/apps/wondif_vue 523 ll 524 more .git 525 more README.md 526 cd /opt 527 ll 528 cd /var 529 ll 530 cd log/ 531 ll 532 sudo mkdir -p /opt/deploy/wondif_vue /var/log/deploy 533 ll 534 sudo chown -R deploy:deploy /opt/deploy/wondif_vue /var/log/deploy 535 sudo -u deploy nano /opt/deploy/wondif_vue/deploy.sh 536 sudo chmod +x /opt/deploy/wondif_vue/deploy.sh 537 cd /opt/ 538 ll 539 cd deploy/ 540 ll 541 cd wondif_vue/ 542 ll 543 sudo -u nano deploy.sh 544 sudo -u deploy nano deploy.sh 545 pm2 list 546 cd www 547 ll 548 www 549 ll 550 cd wondif_vue/ 551 ll 552 more package.json 553 cd .. 554 ll 555 cd wondif_vue/ 556 ll 557 sudo chmod +x /opt/deploy/wondif_vue/deploy.sh 558 www 559 ll 560 cd wondif_vue/ 561 ll 562 git pull origin main 563 more package.json 564 more .gitignore 565 sudo nano .gitignore 566 more package.json 567 git pull origin main 568 git fetch origin 569 git reset --hard origin/main 570 git status 571 git pull origin main 572 npm ci 573 npm run build 574 ll 575 pm2 list 576 pm2 restart wondif_vue 577 pm2 describe wondif_vue 578 pm2 list 579 cd /home/debian/.pm2/logs/ 580 ll 581 more wondif-vue-error.log 582 pm2 logs wondif_vue --lines 200 583 sav 584 ll 585 sudo nano wondif_2025 586 sudo nginx -t 587 sudo systemctl reload nginx 588 pm2 flush 589 pm2 list 590 pm2 logs wondif_vue --err --lines 80 591 pm2 reset wondif_vue 592 pm2 list 593 pm2 describe wondif_vue 594 pm2 logs wondif_vue 595 www 596 ll 597 cd wondif_vue 598 ll 599 git status 600 git pull origni main 601 git pull origin main 602 npm ci 603 npm run build 604 pm2 list 605 pm2 restart wondif_vue 606 git pull origin main 607 npm ci 608 git pull origin main 609 npm run build 610 pm2 restart wondif_vue 611 npx strapi version 612 ll 613 cd .. 614 ll 615 cd strapi_wondif/ 616 ll 617 more README.md 618 npx strapi version 619 pm2 list 620 pm2 stop strapi_wondif 621 npx @strapi/upgrade latest 622 npx strapi version 623 NODE_ENV=production npm run build 624 pm2 list 625 pm2 start strapi_wondif 626 pm2 list 627 mysql --version 628 mysql -u root -p 629 pm2 list 630 www 631 ll 632 cd strapi_wondif/ 633 ll 634 NODE_ENV=production npm run build 635 pm2 list 636 pm2 restart strapi_wondif 637 pm2 list 638 cd strapi_wondif/ 639 www 640 cd strapi_wondif/ 641 NODE_ENV=production npm run build 642 pm2 list 643 pm2 restart strapi_wondif 644 pm2 list 645 date 646 mysql -u root -p 647 SHOW VARIABLES LIKE '%time_zone%'; 648 SHOW VARIABLES LIKE '%time_zone%'; SELECT @@global.time_zone, @@session.time_zone; 649 SELECT NOW() AS now_local, UTC_TIMESTAMP() AS now_utc, TIMEDIFF(NOW(), UTC_TIMESTAMP()) AS diff; 650 show databeses 651 show databeses; 652 history

Description
Site web de l'Orchestre National d'Île-de-France
Readme 15 MiB
Languages
Vue 81.1%
SCSS 10.7%
JavaScript 8.2%