comparison .cms/man/ru_RU.UTF-8/book.html @ 0:78edf6b517a0 draft

24.10
author Coffee CMS <info@coffee-cms.ru>
date Fri, 11 Oct 2024 22:40:23 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:78edf6b517a0
1 <!doctype html>
2 <html lang="ru">
3
4 <head>
5 <meta charset="utf-8">
6 <title>Книга</title>
7 <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
8 <link rel="stylesheet" href="/man/css/prism.css">
9 <link rel="stylesheet" href="/man/css/styles.css">
10 <style>
11 </style>
12 </head>
13
14 <body>
15 <main>
16
17 <h1>Книга</h1>
18
19 <h2>Введение</h2>
20
21 <p>Описание алгоритмов работы CMS, чтобы было понятно как писать код для нее и модифицировать.</p>
22
23 <h2>Настройки CMS</h2>
24
25 <p>
26 Все настройки хранятся в файле .cms/config.php.
27 Он создается при установке.
28 Для каждого модуля имеется отдельный подмассив с именем этого модуля.
29 Такой подход позволяет быстро их загружать, независимо от наличия соединения с базой данных.
30 Кроме того PHP умеет кешировать opcache.enable=1 в php.ini и файл находится в памяти в откомпилированном виде.
31 При сохранении его на диск вызывается функция opcache_invalidate()
32 которая заставит PHP перечитать файл при следующем его включении.
33 </p>
34
35 <h2>Структура папок</h2>
36
37 <p>
38 Все файлы CMS хранятся в папке .cms что позволяет в корне сайта размещать что угодно,
39 в том числе и сгенерированные страницы.
40 И последующее к ним обращение из браузера не запускает CMS.
41 Файлы отдаются с диска веб-сервером.
42 </p>
43 <p>
44 Файлы и папки начинающиеся на точку считаются скрытыми и прямой доступ к ним запрещен.
45 Но веб-сервер, через файл .htaccess, настраивается так, что всегда обращается к файлу .cms/index.php.
46 Если приходит запрос /mytpl/css/style.css, то идет попытка найти файл .cms/mytpl/css/style.css,
47 и если он есть то он копируется в корневую папку по пути указанному в запросе и отдается браузеру.
48 Если на диске уже имеется такой файл, то он не перезаписывается.
49 Единственная тут странность в том, что если файл был на диске, то такого запроса к CMS быть не может.
50 </p>
51
52 </main>
53 <script src=/man/js/prism.js></script>
54 </body>
55 </html>