The basis for creating and upgrading the ability to work with sqlite was the RTOSkit user repository. He created a fork and the ability to work with sqlite MODX Revo 2.2.5. https://github.com/RTOSkit/revolution. Thanks to him for that. It is a pity that he has not come to the GitHub for a long time.
- As a result of a couple of weeks of my crazy enthusiasm, omitting details, everything worked already on version 2.6.5, except for the correct installation of packages, which I temporarily fixed in system.
- support for php 5.6+ with php sqlite3 extension. can be found through phpinfo.
- MODX Revo 2.6.5+
- The load. For small projects such as: Landings, business cards. Because the database is 1 file. Therefore, if 10 users log in at the same time, and the server response is 0.3 seconds, then the 10th user will most likely wait 0.3 * 10 = 3 seconds. I think everything is clear here.
- the database file will be located in the core /data/folder and be closed from unexpected guests through htpasswd. Or move this file outside of www. the path to the file is written in the core / config config.
- Simply clone or save as a ZIP;
- Transfer the archive to your server and unzip it.
- The public_html folder can be deleted, here are the files for working with sqlite3. If you want to help, it will be more convenient to have these files 100% and send PR here.
- Install as usual - / setup.
- 4.1. When setting up the database, select - sqlite.
- 4.2. Do not enter anything into the connections - click to check the connection.
- 4.3. test the connection in the database.
- 4.4. If everything is successful, enter the data for the admin as usual and set it to the end.
- Log in to the admin panel if there are no errors.
- READY. You can test, try.
For packages that use the database, you need to create models for xpdo so that the add-on is installed correctly, otherwise you will get a bunch of errors about not being able to find database models for your Package and as a result, the system will not be able to create tables. Examples of models are the sources that lie in the public_html folder. rely on mysql when creating, there they are almost 1 in 1. Turn on the server and mods logs at the level you need.
If you suddenly make a pull requests, then do them AND in the public_html folder as well. Because in this way it will be easier to see the difference and more accurately bargain.
I hope that someone will come in handy a similar version of MODX without mysql. Already more robust and working. Requests pool in the original MODX repo, so far I think is unnecessary, because there are still errors and there is no good testing and a 100% guarantee that everything will be fine.
Good luck!
Форк для тестирования и использования MODX Revolution 2.7.3 в работе с файловой базой данных SqLite3.
Основой для создания и модернизации возможности работы с sqlite выступил репозиторий пользователя RTOSkit. Он создал форк и возможность работы с sqlite MODX Revo 2.2.5. https://github.com/RTOSkit/revolution. Спасибо ему за это. Жаль что уже он давно не заходит на ГитХаб.
- В результате пары недель моего сумасшедшего энтузиазма, опуская подробности, все заработало уже на версии 2.6.5, кроме корректной установки пакетов, которую я временно пофиксил.
- поддержка php 5.6+ с расширением php sqlite3. можно узнать через phpinfo.
- MODX Revo 2.6.5+
- Нагрузка. Для мелких проектов типа: Лэндингов, визиток. Потому что БД представляет собой 1 файл. Поэтому если одновременно зайдут 10 пользователей, а ответ сервера будет 0,3 сек, то 10й пользователь, скорее всего будет ожидать 0,3*10 = 3 секунды. Думаю, тут все понятно.
- файл БД будет находиться в папке core/data/ и закрываться от нежданных гостей через htpasswd. Или выносите этот файл за пределы www. путь до файла прописывается в конфиге core/config.
- Просто клонировать или сохранить в ZIP;
- Архив перенесите к себе на сервер и распакуйте.
- папку public_html можно удалить, тут файлы для работы с sqlite3. Если вы захотите помочь - удобнее будет 100% иметь эти файлы и сюда слать PR.
- Устанавливайте как обычно - /setup.
- 4.1. При настройке БД выберите - sqlite.
- 4.2. В подключения ничего не вводите - жмите проверить подключение.
- 4.3. протестируйте соединение в БД.
- 4.4. Если все успешно - введите данные для адмики как обычно и установите до конца.
- Войдите в админку если ошибок нет.
- ГОТОВО. Можно тестировать, пробовать.
Для пакетов которые используют БД - нужно создать модели для xpdo, чтобы дополнение установилось корректно, иначе вы получите кучу ошибок о не возможности найти модели БД для своего Пакета и как следствие система создать таблицы не сможет. Примеры моделей - исходники которые лежат в public_html папке. Ориентируйтесь на mysql при создании, там они почти 1 в 1. Включите логи сервера и MODX на нужном вам уровне.
Если вдруг вы будете делать пул реквесты, то делайте их И в папку public_html в том числе. Потому что так можно будет проще увидеть разницу и точнее продебажить.
Надеюсь, что кому-нибудь пригодиться подобная версия MODX без mysql. Уже более крепкая и рабочая. Пул реквесты в оригинальный репо MODX, считаю пока излишними, т.к. еще есть ошибки и нет хорошего тестирования и 100% гарантии что все будет хорошо.
Успехов!