<?php | |
/* There is no point in using symbolic links instead of just assigning values in the case below. */ | |
// Run this on console or use ob_flush()! | |
echo "Before: " . round(memory_get_peak_usage(true)/1024/1024, 2) . " Mb\n"; | |
// Never less than 2 mb at start |
# This script should be run from one of .git/hooks files. | |
# Current directory will be .git | |
# git commands don't need directory be changed to | |
# project root. | |
# composer command does need. | |
export composer_exec="php ~/composer" | |
export command="git diff --name-only $oldrev $newrev -- composer.lock" | |
read oldrev newrev refname | |
export was_changed=$($command) |
Улучшенная по сравнению с mysql
оболочка командной строки - mysqlsh
.
https://dev.mysql.com/doc/mysql-shell/8.0/en/
В стандартный пакет сервера MySQL не входит, нужно загружать отдельно. Можно просто распаковать ZIP-архив и, при желании, прописать в PATH.
# $php_upstream должна быть определена в вышестоящей конфигурации | |
set $router /router.php; | |
location = /nginx.conf { return 404; } | |
location ^~ /.git { return 404; } | |
location ^~ /vendor { return 404; } # для Composer | |
location = /composer.json { return 404; } | |
location @router { |
// IE11 friendly syntax | |
var _Local = _Local || {}; | |
_Local.FIAS = function() {}; | |
/** | |
* @typedef {Object} FIAS~fieldsConfigItem | |
* @property {string} type - $.fias.types.city|street|etc. | |
* @property {string|void} selector - input[name="street"] |
Есть множество центров сертификации, которые ищутся по запросу "купить ssl сертификат".
Существует три уровня сертификатов, которые отличаются скрупулезностью проверки запросившей сертификат организации и, соответственно, стоимостью (в несколько раз). При этом технически степень защиты на всех уровнях одинаковая.
Самый простой сертификат - уровня DV - стоит в пределах 2000 руб. на год (январь 2023 г.). Такой сертификат обычно действует и на домен с www, помимо корневого. (Например, GlobalSign AlphaSSL на firstssl.ru - 1872 руб.)
Срок действия сертификата не включает день "до". Например, если срок - до 2023-01-13, то сертификат действителен до 12-го числа включительно.
Предположим, у нас есть скрипт givefile.php
. Допустим, мы откуда-то уже взяли содержимое файла и хотим отдать его под именем somefile.txt
:
<?php
$body = 'Это содержимое файла';
header("Content-type: application/octet-stream"); // этот заголовок нужен,
// чтобы браузер сразу предложил сохранить файл на диск
header("Content-disposition: filename=somefile.txt"); // а в этом заголовке передается имя файла