Не найдена версия хеша для файла конфигурации

Обновлено: 25.06.2024

HashMyFiles – это небольшая утилита, позволяющая вычислять хэши MD5 и SHA1 одного или нескольких файлов в вашей системе. Вы можете легко скопировать список хешей MD5/SHA1 в буфер обмена или сохранить их в файл text/html/xml.
HashMyFiles также можно запустить из контекстного меню проводника Windows и отобразить хэши MD5/SHA1 выбранного файла или папки.

Системные требования

Эта утилита работает в Windows 2000/XP/2003/Vista/Windows 7/Windows 8/Windows 10. Более старые версии Windows не поддерживаются.

История версий

  • Версия 2.43:
    • Добавлен параметр командной строки /cfg для запуска HashMyFiles с указанным файлом конфигурации.
    • Добавлен параметр «Перетаскивание/режим вставки папки в проводнике», который управляет способом добавления папки при перетаскивании папки из проводника Windows или вставке папки из проводника Windows.
    • Есть 2 варианта выбора: "Добавить только файлы из основной папки" (вариант по умолчанию) или "Добавить файлы из основной папки и всех ее подпапок".
    • Добавлена ​​возможность изменить столбец сортировки из меню (Вид -> Сортировать по). Как и при сортировке щелчком по заголовку столбца, если вы снова нажмете тот же элемент меню сортировки, он будет переключаться между порядком возрастания и убывания.
    • Исправлена ​​ошибка: строка «Открыть на веб-сайте VirusTotal» в меню проводника не загружалась из файла перевода.
    • Процесс хэширования очень больших файлов теперь выполняется быстрее, чем в предыдущих версиях.
    • Исправлено отображение хэшей для файлов нулевой длины.
    • Обновлен параметр «Открыть на веб-сайте VirusTotal» для работы с хэшами SHA1 и MD5.
    • Добавлена ​​возможность выбора другого шрифта (имя и размер) для отображения в главном окне (Параметры -> Выбрать другой шрифт).
    • Исправлена ​​еще одна проблема при хешировании нескольких файлов из контекстного меню Проводника.
    • Снова исправлен параметр «Открыть на веб-сайте VirusTotal», поскольку ссылка на 2.33 не работала для некоторых пользователей. Кроме того, HashMyFiles отображает сообщение об ошибке, если вы попытаетесь использовать эту опцию, когда SHA256 отключен, поскольку VirusTotal больше не поддерживает хэши MD5.
    • Добавлены параметры "Копировать SHA384" и "Копировать SHA512".
    • Исправлена ​​проблема с хешированием нескольких файлов из контекстного меню Проводника.
    • Добавлен значок HashMyFiles в контекстное меню Проводника.
    • Исправлен параметр «Открыть на веб-сайте VirusTotal», чтобы открыть ссылку, позволяющую повторно проанализировать файл.
    • Исправлена ​​ошибка: HashMyFiles не запоминал последний размер/положение окна свойств, если оно не находилось на основном мониторе.
    • Теперь вы можете изменить размер окна свойств, а последний размер/положение этого окна сохраняется в файле .cfg.
    • Параметры копирования MD5/SHA1/SHA256 теперь работают с несколькими выбранными элементами.
    • Добавлены параметры командной строки для включения/выключения определенных типов хэшей, например:
      HashMyFiles.exe /MD5 1 /SHA1 1 /SHA256 0
    • Добавлен параметр "Открыть папку в проводнике".
    • Исправлен параметр «Отметить хэш в буфере обмена» для работы с неограниченным количеством хэшей (в предыдущих версиях он был ограничен 255 символами).
    • Добавлен столбец «Время изменения записи» (доступен только в Windows Vista или более поздних версиях с файловой системой NTFS).
    • Исправлена ​​ошибка: HashMyFiles создавал CSV-файл без заголовка при использовании параметра командной строки /SaveDirect с включенным параметром «Добавить строку заголовка в CSV/файл с разделителями табуляцией».
    • Исправлена ​​ошибка, из-за которой параметр «Открыть на веб-сайте VirusTotal» работал правильно, когда включен параметр «Показывать хэши в верхнем регистре».
    • В столбец «Атрибуты файла» добавлена ​​новая информация: «I» для «Содержимое не проиндексировано», «E» для зашифрованного файла, «X» для «Файл без очистки» и «V» для «Атрибут целостности».
    • Исправлена ​​ошибка: параметр "Запуск от имени администратора" не работал на некоторых системах.
    • Исправлена ​​ошибка: в столбце расширения отображалось неправильное значение, когда имя папки содержало символ точки.
    • Увеличен размер нижней строки состояния для отображения длинных путей.
    • Контекстное меню Проводника внутри HashMyFiles. Если щелкнуть правой кнопкой мыши один элемент, удерживая нажатой клавишу Shift, HashMyFiles теперь отображает контекстное меню Проводника Windows вместо контекстного меню HashMyFiles.
    • Добавлен параметр командной строки /SaveDirect для использования с другими параметрами командной строки сохранения (/scomma, /stab, /sxml и т. д.), что позволяет экспортировать хэши непосредственно в файл, а не накапливая все хэши в памяти, а затем сохраняя их в файл в конце.
    • Добавлен параметр "Запуск от имени администратора" (Ctrl+F11).
    • К параметру «Открыть на веб-сайте VirusTotal» добавлена ​​клавиша быстрого доступа.(Ctrl+R)
    • Исправлена ​​ошибка, из-за которой параметр «Открыть на веб-сайте VirusTotal» правильно работал с хешем MD5 при отсутствии хэша SHA256.
    • Исправлена ​​ошибка: HashMyFiles не мог запомнить последний размер/положение главного окна, если оно не находилось на основном мониторе.
    • Добавлена ​​возможность добавить пункт «Открыть на веб-сайте VirusTotal» в контекстное меню проводника Windows. Если щелкнуть правой кнопкой мыши файл в проводнике Windows и выбрать «Открыть на веб-сайте VirusTotal», HashMyFiles вычислит хэш этого файла, а затем откроет его на веб-сайте VirusTotal.
    • Добавлен параметр командной строки /virustotal, который вычисляет хэш указанного файла, а затем открывает его на веб-сайте VirusTotal.
    • Исправлена ​​ошибка, из-за которой HashMyFiles правильно обрабатывал переход на летнее время, как Explorer в Windows 7.
    • Добавлен параметр "Копировать SHA256" (F11).
    • Если хэш SHA256 не активен, параметр «Открыть на веб-сайте VirusTotal» теперь работает с хешами MD5.
    • Добавлен параметр «Открыть на веб-сайте VirusTotal». (Работает только при активном хэше SHA256)
      Если у вас есть программный файл, который другие люди уже отправили на VirusTotal, эта опция откроет веб-страницу на веб-сайте VirusTotal с результатом антивирусного сканирования.
    • Теперь вы можете использовать строки среды в параметрах "Добавить папку" и "Добавить по подстановочному знаку" (например: %AppData%\*.* )
    • Добавлена ​​64-разрядная сборка.
    • Исправлена ​​ошибка: HashMyFiles отображал хэши для пустых файлов и помечал их как идентичные строке в буфере обмена.
    • Исправлено мерцание при прокрутке списка хэшей.
    • При выборе одного или нескольких файлов, расположенных в удаленной сети, и выборе «Переместить в корзину» HashMyFiles теперь спрашивает, хотите ли вы удалить файлы, поскольку удаленные сетевые файлы нельзя отправить в корзину.
    • Когда HashMyFiles спрашивает, следует ли удалить файлы или переместить их в корзину, ответ по умолчанию теперь установлен на "Нет".
    • Изменение сочетаний клавиш: клавиша Del теперь используется для параметра «Удалить выбранные файлы».
    • Добавлен параметр «Отметить четные/нечетные строки» в меню «Вид». Когда он включен, нечетные и четные строки отображаются разным цветом, чтобы упростить чтение одной строки.
    • Добавлен параметр "Автоматически изменять размер столбцов и заголовков", который позволяет автоматически изменять размер столбцов в соответствии со значениями строк и заголовками столбцов.
    • Исправлена ​​ошибка: HashMyFiles не мог правильно обнаружить идентичные файлы, если пользователь снял отметки с типов хэшей MD5, SHA1 и CRC32.
    • Исправлена ​​ошибка: HashMyFiles не отображал хэш, если пользователь снял отметки с типов хэшей MD5, SHA1 и CRC32.
    • Исправлен параметр "Отметить хэш в буфере обмена" для работы с CRC32.
    • Исправлена ​​ошибка: параметр "Пометить хэш в буфере обмена" не работал с хэшами SHA-256, SHA-512 и SHA-384.
    • Исправлена ​​ошибка: HashMyFiles не отображал информацию о размере и дате/времени для имени файла, начинающегося с точки.
    • Добавлена ​​поддержка хэшей SHA-384. (Поддерживается в Windows XP/SP3, Windows Vista, Windows 7, Windows Server 2003 и Windows Server 2008)
    • Добавлен «Режим отображения CRC32» — шестнадцатеричный или десятичный.
    • Добавлена ​​поддержка хэшей SHA-256 и SHA-512. Эти хэши поддерживаются в Windows XP/SP3, Windows Vista, Windows 7, Windows Server 2003 и Windows Server 2008.
    • Теперь вы можете перетащить один или несколько файлов из окна HashMyFiles в окно Проводника или другое приложение.
    • Добавлено "Удалить выбранные файлы" (Ctrl+R), которое удаляет выбранные файлы из списка хэшей.
    • Добавлен параметр «Добавить строку заголовка в файл CSV/файл с разделителями табуляцией». Если этот параметр включен, имена столбцов добавляются в качестве первой строки при экспорте в файл csv или файл с разделителями табуляцией.
    • В контекстное меню добавлен пункт "Копировать CRC32".
    • Добавлен параметр "Копировать CRC32".
    • В окне "Добавить по шаблону" кнопка обзора теперь работает правильно.
    • Добавлен параметр "Добавить по подстановочному знаку" (F6), который позволяет добавить несколько файлов, указав подстановочный знак и глубину вложенной папки.
    • Добавлен параметр командной строки /wildcard для использования нового параметра "Добавить по подстановочному знаку" из командной строки.
    • Исправлена ​​ошибка: экспорт в файлы .csv работал некорректно, если одно из значений содержало запятые.
    • Добавлен столбец "Атрибуты файла".
    • Добавлен параметр "Показывать время по Гринвичу".
    • Добавлен параметр "Переместить в корзину".
    • Устранена проблема с отсутствующими значками в Windows7/x64.
    • Добавлен параметр "Удалить выбранные файлы", который позволяет легко удалять повторяющиеся файлы.
    • Добавлены параметры командной строки для сортировки.
    • Исправлена ​​ошибка: время изменения и время создания отображали одну и ту же дату/время.
    • Добавлена ​​опция «Вставка Проводника», которая позволяет вставлять список файлов, скопированных из окна Проводника или из любого другого программного обеспечения, которое копирует файлы в буфер обмена, включая некоторые утилиты NirSoft, такие как SearchMyFiles, IECacheView и RegDllView. (используя опцию «Копировать проводником»)
    • Исправлена ​​ошибка: в последней версии не работали параметры командной строки для сохранения.
    • Исправлена ​​проблема: когда окно HashMyFiles скрыто, а на панели задач есть значок, повторный запуск HashMyFiles приведет к открытию существующего экземпляра HashMyFiles вместо создания нового.
    • Добавлен параметр "Поместить значок в область уведомлений".
    • Если вы укажете пустую строку ("") в параметре командной строки /folder, HashMyFiles теперь будет использовать текущую папку.
    • Добавлено автозаполнение для диалогового окна выбора папки.
    • Исправлена ​​ошибка: параметр «Отметить хэш в буфере обмена» помечал все хэши, если не был выбран один или несколько типов хэшей.
    • Добавлено подменю «Типы хэшей» в настройках. Позволяет выбрать, какие типы хэшей вы хотите вычислить.
    • Исправлена ​​ошибка: при перетаскивании файла в окно HashMyFiles, когда он уже обработан HashMyFiles, файл добавлялся несколько раз.
    • Исправлена ​​ошибка: при выборе "Добавить файлы во вложенные папки" добавлялись только файлы из вложенных папок.
    • Добавлено диалоговое окно "Выбрать папку".
    • Добавлен новый параметр: "Добавить файлы во вложенные папки".
    • Добавлен параметр командной строки /folders.
    • Добавлен столбец расширения файла.
    • Диалоговое окно "Выбор процесса" теперь можно изменять в размере.
    • Добавлена ​​поддержка добавления нескольких файлов в параметр "Добавить файл".
    • Добавлены новые столбцы: Версия файла и Версия продукта. (для exe и dll файлов)
    • Исправлена ​​ошибка: основное окно теряло фокус, когда пользователь переключался на другое приложение, а затем возвращался обратно в HashMyFiles.
    • Отображать информацию о ходе выполнения одного файла (в процентах) при хешировании больших файлов.
    • Добавлен новый тип файла при сохранении — файл с разделителями-запятыми (.csv)
    • Добавлен новый параметр командной строки — /scomma
    • Опция "Пометить идентичные хэши" теперь также работает с сохраненными HTML-файлами и HTML-отчетами.
    • Добавить новый столбец: "Идентичные". При наличии 2 или более одинаковых хэшей этот столбец заполняется числом (1 для первого идентичного хэша, 2 для второго и т. д.)
    • Добавить параметр «Пометить идентичные хэши». Отметьте идентичные хэши, используя до 8 разных цветов.
    • Исправлена ​​ошибка: при использовании параметра "Добавить файлы обработки" имена файлов отображались в формате короткого пути.
    • Новый параметр командной строки: /files (поддержка загрузки нескольких файлов)
    • Исправлена ​​ошибка в версии Unicode: в параметр копирования буфера обмена добавлялись неправильные символы.
    • Добавлена ​​опция «Отметить хэш в буфере обмена». Если этот параметр выбран, хэш, который вы копируете в буфер обмена, сравнивается с хэшами MD5/SHA1, которые в данный момент отображаются в HashMyFiles. Если есть совпадение, решетка выделяется зеленым цветом.
    • Добавлены символы 'FF FE' в начало сохраненных файлов Unicode (только версия Unicode).
    • Исправлена ​​ошибка: HashMyFiles оставался в памяти, если вы закрывали его при вычислении хэшей.
    • Новый параметр: «Добавить файлы процесса». Позволяет получить хэши всех DLL-файлов выбранного процесса.
    • Контекстное меню проводника. Если экземпляр HashMyFiles уже запущен, выбранные файлы будут добавлены в существующий экземпляр вместо создания нового.
    • Значки файлов теперь отображаются в соответствии с типом файла.
    • Новый вариант: всегда на высоте.
    • Добавлен пункт меню "Остановить" при вычислении хэшей.
    • Добавлены расчеты CRC32.
    • Добавлены новые столбцы: время изменения, время создания и размер файла.

    Использование HashMyFiles

    HashMyFiles не требует установки или дополнительных DLL-файлов. Для того, чтобы начать его использовать, просто запустите исполняемый файл (HashMyFiles.exe).
    После запуска вы можете добавить файлы и папки, для которых вы хотите просмотреть их хэши MD5/SHA1. Вы можете сделать это, используя параметры «Добавить файл» и «Добавить папку» в меню «Файл» или просто перетащив файлы и папку из Проводника в главное окно HashMyFiles.
    После добавления нужных файлов вы можете скопировать хэши MD5/SHA1 в буфер обмена или сохранить список хэшей в файл text/html/xml.

    Контекстное меню проводника

    HashMyFiles также можно использовать непосредственно из проводника Windows. Чтобы включить эту функцию, перейдите в меню «Параметры» и выберите параметр «Включить контекстное меню проводника».После включения этой функции вы можете щелкнуть правой кнопкой мыши любой файл или папку в проводнике Windows и выбрать в меню пункт «HashMyFiles».
    Если вы запустите параметр HashMyFiles для папки, он отобразит хэши для всех файлов в выбранной папке.
    Если вы запустите параметр HashMyFiles для одного файла, будут отображаться только хэши для этого файла.

    Примечание. Элементы статического меню проводника могут не работать с несколькими файлами. Если вы используете контекстное меню HashMyFiles с несколькими файлами, возможно, будет открыто несколько экземпляров HashMyFiles.
    Если вы хотите получить хэш нескольких файлов из окна проводника, используйте функцию копирования и вставки проводника или перетащите файлы в окно HashMyFiles.


    Параметры командной строки

    Примеры:
    HashMyFiles.exe /file "c:\temp\*.zip" /shtml "c:\temp\1.html"
    HashMyFiles.exe /file "d:\temp \myfile.zip" /stab "d:\temp\myfile.txt"
    HashMyFiles.exe /file "d:\my files"
    HashMyFiles.exe /files "c:\temp\*. zip" "c:\temp\1234.exe" "c:\temp\Hello.exe" /shtml "c:\temp\1.html"
    HashMyFiles.exe /folder "c:\temp" / shtml "c:\temp\1.html"
    HashMyFiles.exe /folder "c:\temp" /shtml "c:\temp\1.html" /sort "Идентичен" /sort "Имя файла"
    HashMyFiles.exe /folder "c:\temp" /shtml "c:\temp\1.html" /sort ~1
    HashMyFiles.exe /wildcard "c:\temp\*.zip" 1 / shtml "c:\temp\1.html"
    HashMyFiles.exe /SaveDirect /folder "c:\temp" /scomma "c:\temp\1.csv"

    Перевод HashMyFiles на другие языки

    1. Запустите HashMyFiles с параметром /savelangfile:
      HashMyFiles.exe /savelangfile
      В папке утилиты HashMyFiles будет создан файл с именем HashMyFiles_lng.ini.
    2. Откройте созданный языковой файл в Блокноте или любом другом текстовом редакторе.
    3. Переведите все строковые записи на нужный язык. При желании вы также можете добавить свое имя и/или ссылку на свой веб-сайт. (значения TranslatorName и TranslatorURL). Если вы добавите эту информацию, она будет использоваться в окне "О программе".
    4. После завершения перевода запустите HashMyFiles, и все переведенные строки будут загружены из языкового файла.
      Если вы хотите запустить HashMyFiles без перевода, просто переименуйте языковой файл или переместите его в другую папку.

    Лицензия

    Эта утилита распространяется бесплатно. Вам разрешено свободно распространять эту утилиту через дискету, CD-ROM, Интернет или любым другим способом, если вы ничего за это не берете. Если вы распространяете эту утилиту, вы должны включить все файлы в дистрибутив без каких-либо изменений!

    Отказ от ответственности

    Программное обеспечение предоставляется «КАК ЕСТЬ» без каких-либо явных или подразумеваемых гарантий, включая, помимо прочего, подразумеваемые гарантии товарного состояния и пригодности для определенной цели. Автор не несет ответственности за какой-либо особый, случайный, косвенный или косвенный ущерб из-за потери данных или по любой другой причине.

    Несмотря на то, что соглашения устраняют необходимость настройки всего CakePHP, вам все равно потребуется настроить несколько вещей, таких как учетные данные вашей базы данных.

    Кроме того, существуют дополнительные параметры конфигурации, которые позволяют заменить значения и реализации по умолчанию на те, которые подходят для вашего приложения.

    Настройка вашего приложения¶

    Ваше приложение поставляется с несколькими файлами конфигурации, расположенными в каталоге config. По умолчанию CakePHP использует файлы PHP для своей конфигурации, но вы можете переключиться на файлы INI или JSON, если хотите.

    Файлы конфигурации загружаются в начале каждого запроса во время процесса начальной загрузки вашего приложения. Конфигурация загружается в Cake\Core\Configure и используется для настройки различных сервисов, предоставляемых CakePHP и вашим приложением.

    Скелет приложения содержит файл config/app.php, который должен содержать конфигурацию, которая не отличается в различных средах, в которых развернуто ваше приложение. Файл config/app_local.php должен содержать данные конфигурации, которые различаются между средами и не должны быть проверены в системе контроля версий. Оба этих файла ссылаются на переменные среды через функцию env(), которая позволяет устанавливать значения конфигурации через среду сервера.

    Загрузка дополнительных файлов конфигурации¶

    Если ваше приложение имеет много параметров конфигурации, может быть полезно разделить конфигурацию на несколько файлов. После создания каждого из файлов в вашем каталоге config/ вы можете загрузить их в bootstrap.php:

    Переменные среды¶

    Многие современные поставщики облачных услуг, такие как Heroku, позволяют определять переменные среды для данных конфигурации. Вы можете настроить CakePHP с помощью переменных среды в стиле приложения 12factor.Переменные среды позволяют вашему приложению требовать меньше состояния, что упрощает управление вашим приложением, когда оно развернуто в нескольких средах.

    Как видно из файла app.php, функция env() используется для чтения конфигурации из среды и построения конфигурации приложения. CakePHP использует строки DSN для баз данных, журналов, транспорта электронной почты и конфигураций кэша, что позволяет вам легко изменять эти библиотеки в каждой среде.

    Для локальной разработки CakePHP использует dotenv, чтобы упростить локальную разработку с использованием переменных среды. Вы увидите файл config/.env.example в своем приложении. Скопировав этот файл в config/.env и настроив значения, вы сможете настроить свое приложение.

    Вы должны избегать фиксации файла config/.env в своем репозитории и вместо этого использовать config/.env.example в качестве шаблона со значениями-заполнителями, чтобы все в вашей команде знали, какие переменные среды используются и что должно быть в каждом из них. один.

    После того как переменные среды установлены, вы можете использовать env() для чтения данных из среды:

    Второе значение, переданное функции env, является значением по умолчанию. Это значение будет использоваться, если для данного ключа не существует переменной среды.

    Изменено в версии 3.5.0: в скелет приложения добавлена ​​поддержка библиотеки dotenv.

    Изменено в версии 3.5.1: добавлена ​​поддержка библиотеки dotenv. Необходимо раскомментировать соответствующий блок кода в config/bootstrap.php

    Общая конфигурация¶

    Ниже приведено описание переменных и того, как они влияют на ваше приложение CakePHP.

    Изменяет отладочный вывод CakePHP. false = производственный режим. Сообщения об ошибках, ошибки или предупреждения не отображаются. true = показаны ошибки и предупреждения.

    Пространство имен, в котором можно найти классы приложений.

    При изменении пространства имен в конфигурации вам также потребуется обновить файл composer.json, чтобы использовать это пространство имен. Кроме того, создайте новый автозагрузчик, запустив php composer.phar dump-autoload .

    Раскомментируйте это определение, если вы не планируете использовать mod_rewrite Apache с CakePHP. Не забудьте также удалить файлы .htaccess.

    Базовый каталог, в котором находится приложение. Если значение равно false, это будет определено автоматически. Если не false, убедитесь, что ваша строка начинается с / и НЕ заканчивается на /. Например, /basedir — допустимая база приложений. В противном случае AuthComponent не будет работать должным образом.

    Определите, какую кодировку использует ваше приложение. Эта кодировка используется для генерации набора символов в макете и кодирования объектов. Он должен соответствовать значениям кодировки, указанным для вашей базы данных.

    Корневой веб-каталог.

    Путь к файлу в корневом каталоге.

    Веб-путь к общедоступному каталогу изображений в корневом каталоге. Если вы используете CDN, вы должны установить это значение на местоположение CDN.

    Веб-путь к общедоступному каталогу css в корневом каталоге. Если вы используете CDN, вы должны установить это значение на местоположение CDN.

    Веб-путь к общедоступному каталогу js в корневом каталоге. Если вы используете CDN, вы должны установить это значение на местоположение CDN.

    Настройте пути для ресурсов, не основанных на классах. Поддерживает плагины , шаблоны , подразделы локалей, которые позволяют определять пути для плагинов, шаблонов просмотра и файлов локалей соответственно.

    Определяет, будут ли загруженные файлы представлены в виде объектов (true) или массивов (false). Эта опция считается отключенной по умолчанию. Дополнительные сведения см. в разделе «Загрузка файлов» в главе «Объекты запросов и ответов».

    Новое в версии 3.9.0: поддержка загруженных файлов как объектов в данных запроса была добавлена ​​в версии 3.9.0

    Случайная строка, используемая при хешировании. Это значение также используется в качестве соли HMAC при симметричном шифровании.

    Добавляет метку времени, которая является временем последнего изменения конкретного файла, в конце URL-адресов файлов активов (CSS, JavaScript, изображения) при использовании соответствующих помощников. Допустимые значения:

    (bool) false — ничего не делать (по умолчанию)

    (bool) true — добавляет временную метку, когда отладка имеет значение true

    (string) ‘force’ — всегда добавляет отметку времени.

    Изменено в версии 3.6.0. Начиная с версии 3.6.0, вы можете переопределить этот глобальный параметр при связывании ресурсов с помощью параметра отметки времени.

    Использование CDN¶

    Все изображения, скрипты и стили, загруженные через HtmlHelper, будут добавляться в начало абсолютного пути CDN, совпадающего с тем же относительным путем, который используется в приложении. Обратите внимание, что при использовании активов на основе плагинов существует особый случай использования: плагины не будут использовать префикс плагина, когда абсолютный . Используется BaseUrl URI, например По умолчанию:

    $this->Helper->assetUrl('TestPlugin.logo.jpg') разрешается в test_plugin/logo.jpg

    Конфигурация базы данных¶

    Информацию о настройке соединений с базой данных см. в разделе Конфигурация базы данных.

    Конфигурация кэширования¶

    См. Конфигурация кэширования для получения информации о настройке кэширования в CakePHP.

    Конфигурация обработки ошибок и исключений¶

    Информацию о настройке обработчиков ошибок и исключений см. в разделе Конфигурация ошибок и исключений.

    Конфигурация ведения журнала¶

    См. Конфигурацию ведения журнала для получения информации о настройке ведения журнала в CakePHP.

    Конфигурация электронной почты¶

    См. Конфигурацию электронной почты для получения информации о настройке пресетов электронной почты в CakePHP.

    Конфигурация сеанса¶

    См. Конфигурацию сеанса для получения информации о настройке обработки сеанса в CakePHP.

    Конфигурация маршрутизации¶

    Дополнительную информацию о настройке маршрутизации и создании маршрутов для вашего приложения см. в разделе Конфигурация маршрутов.

    Дополнительные пути к классам¶

    Дополнительные пути к классам настраиваются с помощью автозагрузчиков, которые использует ваше приложение. При использовании composer для создания вашего автозагрузчика вы можете сделать следующее, чтобы предоставить запасные пути для контроллеров в вашем приложении:

    В приведенном выше примере будут установлены пути как для пространства имен App, так и для пространства имен App\Controller. Будет искаться первый ключ, и если этот путь не содержит класса/файла, будет искаться второй ключ. Вы также можете сопоставить одно пространство имен с несколькими каталогами с помощью следующего:

    Пути плагина, шаблона представления и локали¶

    Поскольку плагины, шаблоны представлений и локали не являются классами, для них нельзя настроить автозагрузчик. CakePHP предоставляет три переменные Configure для установки дополнительных путей для этих ресурсов. В вашем config/app.php вы можете установить эти переменные:

    Пути должны заканчиваться разделителем каталогов, иначе они не будут работать должным образом.

    Конфигурация перегиба¶

    Для получения дополнительной информации см. документацию по настройке Inflection.

    Настроить класс¶

    Класс Configure в CakePHP можно использовать для хранения и извлечения конкретных значений приложения или среды выполнения. Будьте осторожны, этот класс позволяет вам хранить в нем что угодно, а затем использовать его в любой другой части вашего кода: верный соблазн сломать шаблон MVC, для которого был разработан CakePHP. Основная цель класса Configure — хранить централизованные переменные, которые могут использоваться многими объектами. Не забудьте попытаться жить по «соглашению, а не конфигурации», и вы не нарушите структуру MVC, которую предоставляет CakePHP.

    Запись данных конфигурации¶

    Используйте write() для сохранения данных в конфигурации приложения:

    Точка, используемая в параметре $key, может быть использована для организации параметров конфигурации в логические группы.

    Приведенный выше пример также можно было бы написать за один вызов:

    Чтение данных конфигурации¶

    Используется для чтения данных конфигурации из приложения. Если указан ключ, данные возвращаются. Используя наши примеры из write() выше, мы можем прочитать эти данные обратно:

    Если $key оставить пустым, будут возвращены все значения в Configure.

    Изменено в версии 3.5.0: параметр $default добавлен в версии 3.5.0

    Проверка определения данных конфигурации¶

    Используется для проверки существования ключа/пути и его ненулевого значения:

    Удаление данных конфигурации¶

    Используется для удаления информации из конфигурации приложения:

    Чтение и удаление данных конфигурации¶

    Прочитайте и удалите ключ из Configure. Это полезно, когда вы хотите объединить чтение и удаление значений в одной операции.

    Чтение и запись файлов конфигурации¶

    Загрузка файлов конфигурации¶

    После того как вы подключили механизм конфигурации к Configure, вы можете загружать файлы конфигурации:

    Загруженные файлы конфигурации объединяют свои данные с существующей конфигурацией среды выполнения в Configure. Это позволяет перезаписывать и добавлять новые значения в существующую конфигурацию среды выполнения. Если задать для $merge значение true , значения никогда не перезапишут существующую конфигурацию.

    Создание или изменение файлов конфигурации¶

    Создает дамп всех или некоторых данных из Configure в файл или систему хранения, поддерживаемую механизмом настройки. Формат сериализации определяется механизмом конфигурации, прикрепленным как $config. Например, если движок «по умолчанию» — это Cake\Core\Configure\Engine\PhpConfig , сгенерированный файл будет файлом конфигурации PHP, загружаемым с помощью Cake\Core\Configure\Engine\PhpConfig

    Учитывая, что механизм "по умолчанию" является экземпляром PhpConfig. Сохраните все данные в Configure в файл my_config.php:

    Сохранить только конфигурацию обработки ошибок:

    Сохранение конфигурации среды выполнения¶

    Вы также можете сохранить значения конфигурации времени выполнения для использования в будущем запросе. Так как configure запоминает значения только для текущего запроса, вам потребуется сохранить любую измененную информацию о конфигурации, если вы хотите использовать ее в последующих запросах:

    Сохраненные данные конфигурации сохраняются в именованной конфигурации кэша. Дополнительные сведения о кэшировании см. в документации по кэшированию.

    Восстановление конфигурации среды выполнения¶

    При восстановлении информации о конфигурации важно восстановить ее с тем же ключом и конфигурацией кеша, которые использовались для ее хранения. Восстановленная информация объединяется с существующей конфигурацией среды выполнения.

    Модули настройки¶

    По умолчанию ваше приложение будет использовать PhpConfig .

    Загрузка CakePHP¶

    Если у вас есть какие-либо дополнительные потребности в настройке, вы должны добавить их в файл config/bootstrap.php вашего приложения. Этот файл подключается перед каждым запросом и командой CLI.

    Этот файл идеально подходит для ряда распространенных задач начальной загрузки:

    Определение вспомогательных функций.

    Определение конфигурации кэша.

    Определение конфигурации ведения журнала.

    Загрузка пользовательских интонаций.

    Загрузка файлов конфигурации.

    Может показаться заманчивым разместить там функции форматирования, чтобы использовать их в контроллерах. Как вы увидите в разделах «Контроллеры» и «Представления», есть лучшие способы добавления пользовательской логики в ваше приложение.

    Приложение::bootstrap()¶

    В дополнение к файлу config/bootstrap.php, который следует использовать для настройки низкоуровневых задач вашего приложения, вы также можете использовать метод ловушки Application::bootstrap() для загрузки/инициализации подключаемых модулей и присоединения глобального события. слушатели:

    Загрузка подключаемых модулей/событий в Application::bootstrap() упрощает тестирование интеграции контроллера, поскольку события и маршруты будут повторно обрабатываться для каждого метода тестирования.

    Отключение общих таблиц¶

    При использовании универсальных классов таблиц, также называемых автоматическими таблицами, когда полезно быстро создавать новые приложения и запекать модели, универсальный класс таблиц может в некоторых сценариях усложнить отладку.

    Вы можете проверить, был ли какой-либо запрос отправлен из универсального класса таблицы с помощью DebugKit, с помощью панели SQL в DebugKit. Если у вас все еще возникают проблемы с диагностикой проблемы, которая может быть вызвана автоматическими таблицами, вы можете сгенерировать исключение, когда CakePHP неявно использует общий Cake\ORM\Table вместо вашего конкретного класса, например так:

    Поведение NuGet управляется настройками в разных файлах NuGet.Config или nuget.config, как описано в разделе Общие конфигурации NuGet.

    nuget.config — это XML-файл, содержащий узел верхнего уровня, который затем содержит элементы раздела, описанные в этом разделе. Каждый раздел содержит ноль или более элементов. См. пример файла конфигурации. Имена параметров нечувствительны к регистру, а значения могут использовать переменные среды.

    Добавьте файл nuget.config в корень репозитория вашего проекта. Это считается наилучшей практикой, поскольку способствует повторяемости и гарантирует, что у разных пользователей будет одинаковая конфигурация NuGet. Возможно, вам потребуется настроить четкие элементы, чтобы гарантировать, что конфигурация, специфичная для пользователя или компьютера, не применяется. Узнайте больше о том, как применяются настройки.

    раздел конфигурации

    Содержит различные параметры конфигурации, которые можно задать с помощью команды nuget config.

    dependencyVersion и репозиторийPath применяются только к проектам, использующим packages.config . globalPackagesFolder применяется только к проектам, использующим формат PackageReference.

    Пример:

    раздел BindingRedirects

    Настраивает, выполняет ли NuGet автоматическое перенаправление привязки при установке пакета.

    Ключ Значение
    пропустить Логическое значение, указывающее, следует ли пропускать автоматические перенаправления привязки. Значение по умолчанию — false.

    Пример:

    раздел восстановления пакета

    Управляет восстановлением пакетов во время сборки.

    Ключ Значение
    включено Логическое значение, указывающее, может ли NuGet выполнять автоматическое восстановление. Вы также можете установить для переменной среды EnableNuGetPackageRestore значение True вместо установки этого ключа в файле конфигурации.
    automatic Логическое значение, указывающее, является ли должен проверять наличие отсутствующих пакетов во время сборки.

    Пример:

    раздел решения

    Определяет, включена ли папка пакетов решения в систему управления версиями. Этот раздел работает только с файлами nuget.config в папке решения.

    Ключ Значение
    disableSourceControlIntegration Логическое значение, указывающее, следует ли игнорировать папку пакетов при работе с системой управления версиями. Значение по умолчанию — false.

    Пример:

    Разделы исходного кода пакета

    Все packageSources , packageSourceCredentials , apikeys , activePackageSource , disabledPackageSources , trustSigners и packageSourceMapping позволяют настроить работу NuGet с репозиториями пакетов во время операций установки, восстановления и обновления.

    Для управления этими параметрами обычно используется команда nuget sources, за исключением API-ключей, управление которыми осуществляется с помощью команды nuget setapikey, и TrustSigners, управление которыми осуществляется с помощью команды nuget Trusted-Signers.

    Источники пакетов

    Список всех известных источников пакетов. Порядок игнорируется во время операций восстановления и для любого проекта, использующего формат PackageReference. NuGet учитывает порядок источников для операций установки и обновления проектов с использованием packages.config .

    Ключ Значение
    (имя, присваиваемое источнику пакета ) Путь или URL источника пакета.

    Пример:

    Если присутствует для данного узла, NuGet игнорирует ранее определенные значения конфигурации для этого узла. Узнайте больше о том, как применяются настройки.

    учетные данные источника пакета

    Хранит имена пользователей и пароли для источников, которые обычно указываются с параметрами -username и -password с источниками nuget . Пароли шифруются по умолчанию, если не используется параметр -storepasswordincleartext. При необходимости допустимые типы аутентификации можно указать с помощью переключателя -validauthenticationtypes.

    Ключ Значение
    имя пользователя Имя пользователя для источника в виде обычного текста.
    пароль Зашифрованный пароль для источника. Зашифрованные пароли поддерживаются только в Windows и могут быть расшифрованы только при использовании на том же компьютере и под тем же пользователем, что и исходное шифрование.
    открытый текстовый пароль Незашифрованный пароль для источника. Примечание. Для повышения безопасности можно использовать переменные среды.
    validauthenticationtypes Разделенный запятыми список допустимых типов аутентификации для этого источника. Установите базовый, если сервер объявляет NTLM или Negotiate и ваши учетные данные должны быть отправлены с использованием базового механизма, например при использовании PAT с локальным сервером Azure DevOps. Другими допустимыми значениями являются переговоры, kerberos, ntlm и дайджест, но вряд ли эти значения будут полезны.

    Пример:

    В файле конфигурации элемент содержит дочерние узлы для каждого применимого имени источника (пробелы в имени заменены на _x0020_ ). То есть для источников с именами «Contoso» и «Test Source» файл конфигурации содержит следующее при использовании зашифрованных паролей:

    При использовании незашифрованных паролей, хранящихся в переменной среды:

    При использовании незашифрованных паролей:

    Кроме того, могут быть указаны действительные методы аутентификации:

    апиключи

    Хранит ключи для источников, использующих аутентификацию с помощью ключа API, как указано с помощью команды nuget setapikey.

    Ключ Значение
    (исходный URL) Зашифрованный ключ API.

    Пример:

    disabledPackageSources

    Идентифицированные в настоящее время отключенные источники. Может быть пустым. Если в этом разделе не отключены определенные источники, они включены.

    Ключ Значение
    (имя источника) Логическое значение, указывающее, отключен ли источник.

    Пример:

    В приведенном выше примере источник пакета Contoso отключен и не будет использоваться для загрузки или установки пакетов.

    активный источник пакета

    (только 2.x; устарело в 3.x+)

    Идентифицирует текущий активный источник или указывает совокупность всех источников.

    Ключ Значение
    (имя источника) или Все< /td> Если ключ является именем источника, значением является исходный путь или URL-адрес. Если All , значение должно быть (Aggregate source), чтобы объединить все источники пакетов, которые не отключены иным образом.

    Пример:

    раздел TrustedSigners

    Хранит доверенных подписантов, используемых для разрешения пакета при установке или восстановлении. Этот список не может быть пустым, если пользователь устанавливает для параметра signalValidationMode значение require .

    Этот раздел можно обновить с помощью команды nuget trust-signers.

    Схема:

    Доверенная подписывающая сторона имеет набор элементов сертификата, в котором перечислены все сертификаты, идентифицирующие данную подписывающую сторону. Доверенным подписывающим лицом может быть либо Автор, либо Хранилище .

    Поддерживаемые хэш-алгоритмы, используемые для отпечатка сертификата: SHA256 , SHA384 и SHA512 .

    Если в сертификате указано значение true для параметра allowUntrustedRoot, данный сертификат может быть связан с ненадежным корнем при построении цепочки сертификатов в рамках проверки подписи.

    Пример:

    раздел fallbackPackageFolders

    (3.5+) Предоставляет способ предварительной установки пакетов, чтобы не выполнять никаких действий, если пакет найден в резервных папках.Папки резервных пакетов имеют ту же структуру папок и файлов, что и глобальная папка пакета: присутствует .nupkg, и все файлы извлекаются.

    Логика поиска для этой конфигурации:

    Посмотрите в глобальной папке пакета, чтобы убедиться, что пакет/версия уже загружены.

    Поищите в резервных папках соответствие пакета/версии.

    Если поиск выполнен успешно, загрузка не требуется.

    Ключ Значение
    (имя резервной папки) Путь к резервной папке.

    Пример:

    Раздел сопоставления источника пакета

    Раздел packageSourceMapping содержит сведения, которые помогают операциям с пакетами NuGet определять, откуда следует загружать идентификатор пакета.

    Сейчас этим разделом можно управлять только вручную.

    Раздел packageSourceMapping может содержать только разделы packageSource.

    Источник пакета

    Подраздел раздела packageSourceMapping. Содержит сопоставление, помогающее NuGet определить, следует ли рассматривать источник для загрузки интересующего пакета.

    Key
    Имя источника пакета, объявленное в разделе packageSources. Ключ должен точно совпадать с ключом источника пакета.

    Разделы packageSource в packageSourceMapping однозначно идентифицируются ключом .

    пакет

    Пакет является частью раздела packageSource.

    Шаблон
    Шаблон, определенный синтаксисом сопоставления источника пакета.

    Пример:

    раздел управления пакетами

    Задает формат управления пакетами по умолчанию: packages.config или PackageReference. Проекты в стиле SDK всегда используют PackageReference.

    Ключ Значение
    формат Логическое значение, указывающее формат управления пакетами по умолчанию. Если 1 , формат PackageReference. Если 0 , формат packages.config.
    disabled Логическое значение, указывающее, показывать ли запрос на выбор по умолчанию формат пакета при первой установке пакета. False скрывает подсказку.

    Пример:

    Если присутствует для данного узла, NuGet игнорирует ранее определенные значения конфигурации для этого узла. Узнайте больше о том, как применяются настройки.

    Использование переменных среды

    Вы можете использовать переменные среды в значениях nuget.config (NuGet 3.4+), чтобы применять параметры во время выполнения.

    Например, если для переменной среды HOME в Windows задано значение c:\users\username , значение %HOME%\NuGetRepository в файле конфигурации преобразуется в c:\users\username\NuGetRepository .

    Обратите внимание, что вы должны использовать переменные среды в стиле Windows (начинаются и заканчиваются символом %) даже на Mac/Linux. Наличие $HOME/NuGetRepository в файле конфигурации не будет разрешено. В Mac/Linux значение %HOME%/NuGetRepository будет преобразовано в /home/myStuff/NuGetRepository .

    Если переменная среды не найдена, NuGet использует буквальное значение из файла конфигурации. Например, %MY_UNDEFINED_VAR%/NuGetRepository будет разрешен как path/to/current_working_dir/$MY_UNDEFINED_VAR/NuGetRepository

    В таблице ниже показан синтаксис переменных среды и поддержка разделителей путей для файлов NuGet.Config.

    Поддержка переменных среды NuGet.Config

    < td>$MY_VAR
    Синтаксис Разделитель каталогов Windows nuget.exe Windows dotnet.exe Mac nuget .exe (в моно) Mac dotnet.exe
    %MY_VAR% /< /td> Да Да Да Да
    %MY_VAR% \ Да Да Нет Нет
    / Нет Нет Нет Нет
    $MY_VAR \ Нет Нет Нет Нет

    Пример файла конфигурации

    Ниже приведен пример файла nuget.config, который иллюстрирует ряд параметров, включая необязательные:

    Caddy имеет стандартный unix-подобный интерфейс командной строки. Основное использование:

    Укажите параметры, которые заменяются вашим вводом.

    [Квадратные скобки] обозначают необязательные параметры.

    Эллипсы . указывает продолжение, т. е. один или несколько параметров.

    Быстрый старт: помощь кэдди

    caddy адаптировать Адаптирует документ конфигурации к стандартному JSON

    caddy build-info Выводит информацию о сборке

    caddy environ Печать окружения

    caddy file-server Простой, но готовый к работе файловый сервер

    caddy fmt форматирует Caddyfile

    caddy hash-password Хэширует пароль и выводит base64

    caddy help Просмотреть справку по командам caddy

    caddy list-modules Список установленных модулей Caddy

    caddy reload Изменяет конфигурацию запущенного процесса Caddy

    caddy run Запускает процесс Caddy на переднем плане

    caddy start Запускает процесс Caddy в фоновом режиме

    caddy stop Останавливает запущенный процесс Caddy

    caddy trust Устанавливает сертификат в локальные хранилища доверия

    caddy untrust Отменяет доверие к сертификату из локальных доверенных хранилищ

    обновление Caddy Обновляет Caddy до последней версии

    caddy add-package Обновляет Caddy до последней версии с добавлением дополнительных подключаемых модулей

    caddy remove-package Обновляет Caddy до последней версии, удаляя некоторые подключаемые модули

    caddy validate Проверяет правильность файла конфигурации

    caddy version Распечатывает версию

    Подкоманды

    адаптация кэдди

    Адаптирует конфигурацию к собственной структуре конфигурации JSON Caddy и записывает выходные данные в стандартный вывод вместе со всеми предупреждениями в стандартный вывод, а затем завершает работу.

    --config — это путь к файлу конфигурации. Если опущено, предполагается, что Caddyfile находится в текущем каталоге, если он существует; в противном случае этот флаг обязателен.

    --adapter указывает используемый адаптер конфигурации; по умолчанию — caddyfile .

    --pretty отформатирует вывод с отступом для удобочитаемости.

    --validate загрузит и подготовит адаптированную конфигурацию для проверки правильности (но на самом деле не запустит конфигурацию).

    Обратите внимание, что успешно адаптированная конфигурация может не пройти проверку. В качестве примера используйте этот Caddyfile:

    Попробуйте адаптировать его:

    Выполняется без ошибок. Тогда попробуйте:

    Несмотря на то, что этот Caddyfile может быть адаптирован к JSON без ошибок, фактические файлы сертификатов и/или ключей не существуют, поэтому проверка не выполняется, поскольку эта ошибка возникает на этапе подготовки. Таким образом, проверка является более надежной проверкой ошибок, чем адаптация.

    Пример

    Чтобы адаптировать Caddyfile к JSON, чтобы его можно было легко читать и настраивать вручную:

    информация о сборке контейнера

    Выводит предоставленную Go информацию о сборке (путь к основному модулю, версии пакетов, замены модулей).

    окружающая среда

    Распечатывает окружение так, как его видит кэдди, затем выходит. Может быть полезно при отладке систем инициализации или модулей управления процессами, таких как systemd.

    файл-сервер caddy

    Запускает простой, но готовый к работе статический файловый сервер.

    --root указывает путь к корневому файлу. По умолчанию используется текущий рабочий каталог.

    --listen принимает адрес слушателя. По умолчанию :80 , если не используется --domain , то по умолчанию будет :443.

    --browse активирует списки каталогов, если запрашивается каталог без индексного файла.

    --templates активирует отображение шаблонов.

    --access-log включает журнал запросов/доступа.

    Эта команда отключает API администрирования, упрощая запуск нескольких экземпляров на локальном компьютере для разработки.

    Кадди ФМТ

    Форматирует или украшает Caddyfile, затем завершает работу. Результат выводится на стандартный вывод, если не используется --overwrite.

    указывает путь к Caddyfile. Если - , ввод считывается со стандартного ввода. Если этот параметр опущен, вместо него предполагается файл с именем Caddyfile в текущем каталоге.

    --overwrite заставляет результат записываться во входной файл, а не выводиться на терминал. Если входной файл не является обычным файлом, этот флаг не действует.

    хеш-пароль caddy

    Хэширует пароль и записывает вывод в стандартный вывод в кодировке base64, а затем завершает работу.

    --plaintext — это открытая текстовая форма пароля. Если этот параметр не указан, будет использоваться интерактивный режим, и пользователю будет предложено ввести пароль вручную.

    --алгоритм может быть bcrypt или scrypt. По умолчанию используется bcrypt.

    --salt используется только в том случае, если алгоритму требуется внешняя соль (например, scrypt).

    помощь кэдди

    Распечатывает текст справки CLI, при необходимости для определенной подкоманды, а затем завершает работу.

    модули списка caddy

    Распечатывает установленные модули Caddy, опционально вместе с информацией о пакете и/или версии из связанных с ними модулей Go, а затем завершает работу.

    В некоторых сценариях может быть избыточно распечатывать все стандартные модули, поэтому вы можете использовать --skip-standard, чтобы исключить их из вывода.

    ПРИМЕЧАНИЕ. Из-за ошибки в Go информация о версии доступна только в том случае, если Caddy собран как зависимость, а не как основной модуль. Используйте xcaddy, чтобы упростить эту задачу.

    Перезагрузка кэдди

    Передает работающему экземпляру Caddy новую конфигурацию. Это имеет тот же эффект, что и отправка документа в конечную точку /load, но эта команда удобна для простых рабочих процессов, связанных с файлами конфигурации. По сравнению с командами stop , start и run эта единственная команда является правильным семантическим способом изменить/перезагрузить текущую конфигурацию.

    Поскольку эта команда использует API, нельзя отключать конечную точку администратора.

    --config — это применяемый файл конфигурации.Если - , конфиг читается со стандартного ввода. Если не указано, он попробует файл с именем Caddyfile в текущем рабочем каталоге и, если он существует, адаптирует его с помощью адаптера конфигурации caddyfile; в противном случае возникает ошибка, если нет файла конфигурации для загрузки.

    --adapter указывает используемый адаптер конфигурации, если таковой имеется.

    --address необходимо использовать, если конечная точка администратора не прослушивает адрес по умолчанию и если он отличается от адреса в предоставленном файле конфигурации. Обратите внимание, что в настоящее время поддерживаются только адреса TCP.

    --force вызовет перезагрузку, даже если указанная конфигурация совпадает с той, что уже запущена Caddy. Может быть полезно заставить Caddy повторно инициализировать свои модули, что может иметь побочные эффекты, например: повторная загрузка сертификатов TLS, загруженных вручную.

    обратный прокси-сервер caddy

    --from — адрес для прокси.

    --to — это адрес для прокси.

    --change-host-header заставит Caddy изменить заголовок Host с входящего значения на адрес восходящего потока.

    Параметры --from и --to могут быть URL-адресами, поскольку схема и имя домена будут выводиться из предоставленного URL-адреса (пути и строки запроса игнорируются). Или это может быть простой сетевой адрес, а не полный URL.

    Эта команда отключает API администрирования, чтобы упростить запуск нескольких экземпляров на локальном компьютере для разработки.

    бег с кэдди

    Запускает Caddy и блокирует его на неопределенный срок; то есть режим "демон".

    --config указывает исходный файл конфигурации для немедленной загрузки и использования. Если - , конфиг читается со стандартного ввода. Если конфигурация не указана, Caddy будет работать с пустой конфигурацией и использовать настройки по умолчанию для конечных точек API администратора, которые можно использовать для подачи новой конфигурации. В качестве особого случая, если в текущем рабочем каталоге есть файл с именем «Caddyfile» и адаптер конфигурации caddyfile подключен (по умолчанию), то этот файл будет загружен и использован для настройки Caddy даже без каких-либо флагов командной строки.

    --adapter — это имя адаптера конфигурации, используемого при загрузке исходной конфигурации, если таковая имеется. Этот флаг не нужен, если имя файла --config начинается с «Caddyfile», что предполагает адаптер caddyfile. В противном случае этот флаг требуется, если предоставленный файл конфигурации не имеет собственного формата JSON Caddy. Любые предупреждения будут напечатаны в лог, но учтите, что любая адаптация без ошибок будет сразу использована, даже если есть предупреждения. Если вы хотите сначала просмотреть результаты адаптации, используйте подкоманду caddy adapt.

    --pidfile записывает PID в указанный файл.

    --environ распечатывает среду перед запуском. Это то же самое, что и команда caddy environ, но она не завершается после печати.

    --envfile загружает переменные среды из указанного файла.

    --resume использует последнюю загруженную конфигурацию, которая была автоматически сохранена, переопределяя флаг --config (если он есть). Использование этого флага гарантирует устойчивость конфигурации при перезагрузке компьютера или перезапуске процесса. Это наиболее полезно в развертываниях, ориентированных на API.

    --watch просматривает файл конфигурации и автоматически перезагружает его после изменения. ⚠️ Эта функция предназначена для использования только в локальных средах разработки!

    старт кэдди

    То же, что и caddy run , но в фоновом режиме. Эта команда блокируется только до тех пор, пока фоновый процесс не запустится успешно (или не запустится), а затем завершит работу.

    Примечание: флаг --config не поддерживает чтение конфигурации из стандартного ввода.

    Не рекомендуется использовать эту команду с системными службами или в Windows. В Windows дочерний процесс останется подключенным к терминалу, поэтому закрытие окна принудительно остановит Caddy, что не очевидно. Вместо этого рассмотрите возможность использования Caddy как службы.

    После запуска вы можете использовать caddy stop или конечную точку POST /stop API для выхода из фонового процесса.

    кэдди-стоп

    Мягко останавливает работающий процесс Caddy (кроме процесса команды остановки) и вызывает его завершение. Он использует конечную точку POST /stop API администратора для корректного завершения работы.

    Адрес этого запроса можно настроить с помощью флага --address или из заданного --config , если API администрирования работающего экземпляра не использует адрес прослушивания по умолчанию.

    Если вы хотите остановить текущую конфигурацию, но не хотите выходить из процесса, используйте перезагрузку caddy с пустой конфигурацией или конечную точку DELETE /config/.

    кедди траст

    Устанавливает корневой сертификат ЦС, управляемого приложением Caddy PKI, в локальные хранилища доверенных сертификатов.

    Caddy попытается автоматически установить свои корневые сертификаты в локальные хранилища доверенных сертификатов при их первом создании, но может произойти сбой, если у Caddy нет соответствующих разрешений на запись в хранилище доверенных сертификатов. Эта команда необходима для предварительной установки сертификатов перед их использованием, если серверный процесс запускается от имени непривилегированного пользователя (например, через systemd). Возможно, вам придется запустить эту команду с помощью sudo для систем unix.

    По умолчанию эта команда устанавливает корневой сертификат для центра сертификации Caddy по умолчанию (т. е. "локального"). Вы можете указать идентификатор другого центра сертификации с помощью флага --ca.

    Эта команда попытается подключиться к API администрирования Caddy для получения корневого сертификата, используя конечную точку GET /pki/ca//certificates. Вы можете явно указать --address или использовать флаг --config для загрузки адреса администратора из вашей конфигурации, если API администрирования работающего экземпляра не использует адрес прослушивания по умолчанию.

    Вы также можете использовать двоичный файл caddy с этой командой для установки сертификатов на другие компьютеры в вашей сети, если API администратора доступен для других компьютеров — будьте осторожны при этом, чтобы не подвергать API администратора ненадежным клиентам. .

    кэдди не доверяет

    Отменяет доверие к корневому сертификату из локальных хранилищ доверенных сертификатов.

    Эта команда удаляет доверие; он не обязательно полностью удаляет корневой сертификат из хранилищ доверенных сертификатов. Таким образом, постоянное доверие и недоверие к новым сертификатам может привести к переполнению баз данных доверия.

    Эта команда не удаляет и не изменяет файлы сертификатов из настроенного хранилища Caddy.

    Эту команду можно использовать одним из двух способов:

    • Указав прямой путь к корневому сертификату, которому нельзя доверять, с помощью флага --cert.
    • Получив корневой сертификат из API администрирования с помощью конечной точки GET /pki/ca//certificates. Это поведение по умолчанию, если флаги не заданы.

    Если используется API администратора, идентификатор ЦС по умолчанию имеет значение "локальный". Вы можете указать идентификатор другого центра сертификации с помощью флага --ca. Вы можете явно указать --address или использовать флаг --config для загрузки адреса администратора из вашей конфигурации, если API администрирования работающего экземпляра не использует адрес прослушивания по умолчанию.

    обновление тележки

    Заменяет текущий двоичный файл Caddy последней версией с нашей страницы загрузки с теми же установленными модулями, включая все сторонние подключаемые модули, которые зарегистрированы на веб-сайте Caddy.

    Обновления не прерывают работу серверов; в настоящее время команда заменяет только двоичный файл на диске. Это может измениться в будущем, если мы найдем хороший способ сделать это.

    Процесс обновления отказоустойчив; текущий двоичный файл создается первым (копируется рядом с текущим) и автоматически восстанавливается, если что-то пойдет не так. Если вы хотите сохранить резервную копию после завершения процесса обновления, вы можете использовать параметр --keep-backup.

    Для этой команды могут потребоваться повышенные привилегии, если у вашего пользователя нет разрешения на запись в исполняемый файл.

    дополнительный пакет caddy

    Подобно обновлению caddy, текущий двоичный файл Caddy заменяется последней версией с теми же установленными модулями, плюс пакеты, перечисленные в качестве аргументов, включенных в новый двоичный файл. Найдите список пакетов, которые вы можете установить, на нашей странице загрузки. Каждый аргумент должен быть полным именем пакета.

    удалить пакет caddy

    Подобно caddy upgrade , заменяет текущий двоичный файл Caddy последней версией с теми же установленными модулями, но без пакетов, перечисленных в качестве аргументов, если они существовали в текущем двоичном файле. Запустите caddy list-modules --packages, чтобы просмотреть список имен пакетов нестандартных модулей, включенных в текущий двоичный файл.

    проверка кэдди

    Проверяет файл конфигурации, затем завершает работу. Эта команда десериализует конфигурацию, затем загружает и подготавливает все ее модули, как если бы запускала конфигурацию, но на самом деле конфигурация не запускается. Это выявляет ошибки в конфигурации, возникающие на этапах загрузки или подготовки, и является более надежной проверкой ошибок, чем просто сериализация конфигурации в формате JSON.

    --config — файл конфигурации для проверки. Если - , конфиг читается со стандартного ввода. По умолчанию это Caddyfile в текущем каталоге, если он есть.

    --adapter — это имя используемого адаптера конфигурации, если файл конфигурации не имеет собственного формата JSON Caddy. Если файл конфигурации начинается с Caddyfile , по умолчанию используется адаптер caddyfile.

    Читайте также: