Golang — строка для форматирования даты
Для форматирования даты в нужном формате нужно передать строку. Но только без всяких H:i:s, как в других языках. Строка должна быть вида Mon Jan 2 15:04:05 -0700 MST 2006. Т.е. нужно передавать именно конкретные цифры. Рассмотрим для примера дату 2016-07-09 21:00:00 +0000 UTC. Строка для форматирования Результат Mon, 02 Jan 03:04 Sun, 09 Jul 09:00 …
Golang на хостинге digitalocean
Не очень понимаю, зачем это надо, но на всякий случай сохраню. У меня в планах собирать бинарник у себя, не выливая исходники на хостинг. https://www.digitalocean.com/community/tutorials/how-to-install-go-1-6-on-ubuntu-14-04
Https бесплатно
Первоначальный запуск
1 |
./certbot-auto certonly --webroot -w /var/www/<my>/htdocs -d <sub.domain.com> --email <your email> --agree-tos |
Удаление сертификата для домена
1 |
./certbot-auto delete |
и выбрать домен из списка Обновление сертификатов Делается регулярно, т.к. срок действия — 90 дней. Или внести в крон:
1 |
./path/to/certbot-auto renew --quiet |
или руками:
1 |
./path/to/certbot-auto renew# --dry-run |
https://letsencrypt.org/how-it-works/ https://certbot.eff.org/#centosrhel6-nginx Если при тестировании обновления с помощью команды ./path/to/certbot-auto renew —dry-run возникает следующая ошибка
1 2 3 4 |
.../.local/share/letsencrypt/local/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:120: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning. InsecurePlatformWarning You are using pip version 8.0.3, however version 8.1.2 is available. You should consider upgrading via the 'pip install --upgrade pip' command. |
или
1 2 3 4 5 |
Command "python setup.py egg_info" failed with error code -9 in /tmp/pip-build-qRqJ36/zope.interface/ Certbot has problem setting up the virtual environment. We were not be able to guess the right solution from your pip output. |
То возникают они из-за недостатка памяти …
Escape нужных символов в go
Urlencode на go для определённого набора символов https://play.golang.org/p/PmA-XwvFS2
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
package main import ( "fmt" ) // chars to escape are described in /usr/local/go/src/net/url/url.go:123 which links to RFC 3986 (§3.4); I just removed & and = var charsToEscape = map[rune]bool{ '$': true, '&': false, // it should remain unchanged '+': true, ',': true, '/': true, ':': true, ';': true, '=': false, // it should remain unchanged '?': true, '@': true, } func main() { query := "@a$dsf" fmt.Println(FixURLQuery(query)) } func FixURLQuery(rawURL string) string { fixedURL := make([]byte, len(rawURL) * 3) j := 0 for i := 0; i < len(rawURL); i++ { c :=rawURL[i] if charsToEscape[rune(c)] == true { fixedURL[j] = '%' fixedURL[j+1] = "0123456789ABCDEF"[c>>4] fixedURL[j+2] = "0123456789ABCDEF"[c&15] j += 3 } else { fixedURL[j] = c j++ } } return string(fixedURL[:j]) } |
collabedit для совместного редактирования кода
Удобно для проведения технического собеседования. http://collabedit.com/
Инструмент для построения диаграмм
Сервис для постоения диаграмм — https://www.gliffy.com/.
Fingerprint2 — способ детектировать уникального пользователя без использования cookie
https://github.com/Valve/fingerprintjs2
SQL. Как переписать correlation subquery в JOIN to derived table
Допустим есть такая таблица
Seo-оптимизации для правильного показа в выдаче google
Добавить поисковую форму — https://developers.google.com/structured-data/slsb-overview. Разметка для более правильного отображения товаров — http://schema.org/Product/http://schema.org/Offer Отображение хлебных крошек — https://developers.google.com/structured-data/breadcrumbs#examples
Argus eyes для автоматизации регрессионного тестирования
http://arguseyes.io/