По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Партнер данного материала Telegram-канал Админим с Буквой Тема статьи небольшая, но информация данная необходима для понимания ограничений на дисках в операционной системе Linux. В данной статье рассмотрим: Установка квоты Редактирование квоты Просмотр отчетов по квотам Квоты – это ограничения, налагаемые системным администратором на использование дискового пространства в операционных системах. Они позволяют гибко управлять ограниченным ресурсом для сервера свободным местом на жестком диске. Квоты можно устанавливать, как на отдельных пользователей, так и на группы пользователей. Для конфигурации и управления квотами используются следующие команды: quotaon – включение квоты quotaoff – выключение квоты edquota – редактирование квоты repquota - отчет по квотам У Windows Server, конечно намного богаче инструментарий по работе с квотами. Для этого выделена целый File Server Resource Manager, но в данной статье мы посмотрим, как это работает в Linux системах на примере Ubuntu Server. У меня есть смонтированый раздел /dev/sdc1 в папку /mnt/hard. Для того, чтобы работать с квотами, необходимо поставить пакет apt-get install quota. Для того, чтобы использовать квоты, нам необходимо добавить монтирование данного раздела в файл /etc/fstab. Добавляем следующую строчку: /dev/sdc1 /mnt/hard auto rw,user,auto,usrquota,grpquota 0 0 Где, раздел, куда монтируем, автоопределение файловой системы, раздел для записи, разрешаем монтирование пользователям, раздел будет монтироваться автоматически при старте системы и включаем пользовательскую квоту и групповую. Строка будет выглядеть как на картинке. Сохраняем и перезагружаем. Для начала выключаем все квоты, если они когда-нибудь ставились, для чистоты настройки quotaoff /mnt/hard. Следующая команда quotacheck – которая создаст квоту для пользователей и групп, у нее большой функционал, но мы ее используем именно в таком ключе. Квоту мы можем создать только полностью на примонтированный раздел – это связанно с файловой системой ext4. Существуют и другие файловые системы, в которых мы можем ставить квоты на папки и работать более гибко, например xfs. quotacheck –cug /mnt/hard. В данном случае мы квоту ставим полностью на раздел, который смонтирован в /mnt/hard. И как видим команда создала 2 файла aquota.group и aquota.user. Это файлы с настройками квот. Это двоичные файлы и при попытке их посмотреть, например, cat aquota.user мы увидим, нечто не читаемое. Для редактирования данных фалов настройки текстовый редактор не подойдет, и мы будем использовать отдельную команду edquota – u siadmin. Т.е команда -u указывает , что мы редактируем для пользователя и далее указывается непосредственно пользователь. Вот так выглядит редактирование. Мы видим, что здесь есть blocks – число 1К блоки, soft – мягкая квота, это квота, которую пользователь может превысить, но не более чем на неделю, hard – жесткая квота, это квота которую пользователь не сможет превысить вообще. Получается так, если пользователь siadmin поставит soft 10 и hard 30, и запишу файлик в 15КБ, то неделю моя квота терпит, а через неделю система скажет, что квота превышена и будет требовать очистки. Если создать сразу файл 40 КБ, то квота скажет, что нету места на жестком диске. Так же можно поставить квоту на inodes, т.е на уникальные идентификаторы файлов, каждому файлу присваивается уникальный идентификатор, следовательно, пользователь не может превысить их количество по квоте. Когда мы выполняем команду edquota, то для открытия открывается редактор, установленный по умолчанию. В данном случае редактор nano. Как было уже написано мягкая квота устанавливается на неделю и после чего начинает блокировать, если мы не уменьшили размер файлов или не уменьшили их количество, смотря какая квота была выставлена. Мы можем данный параметр изменить, выполнив sudo edquota –t. Думаю, открытый файл на редактирование, тут все интуитивно понятно. Меняем и сохраняем. Мы в файле /etc/fstab указали, что файловая система монтируется с применением квот, потом командой quotacheck создали квоты, а затем указали ограничения edquota. Но до сих пор квоты не включены, квоты не работают! Для того, чтобы квоты заработали используется команда sudo quotaon /mnt/hard. И как только мы эту команду дали, файлы созданные aquota.group и aquota.user будут отредактированы и квоты заработают. Чтобы посмотреть, как работают квоты, создадим файл текстовый. Но т.к монтировался раздел из под root, то необходимо сменить владельца папки /mnt/hard/. Это можно сделать командой chown siadmin:root /mnt/hard. И теперь спокойно можно создать файл touch test.txt. Теперь добавим в файл информацию несколько слов. edquota – u siadmin выполняем и видим, что число блоков изменилось. Добавим еще информации, еще раз поменяется количество блоков. Создадим еще один файл – изменится число inodes. Далее простым копирование увеличиваем количество файлов, пока не сработает квота. Соответственно мы одновременно можем использовать квоты и по размеру, и по inodes. Очень важный момент. Поднимаемся в корневую папку /. Команда sudo repqouta /mnt/hard покажет отчет по квотам. Есть еще интересная команда - man warnquota. Команда отправляет e-mail при превышении квоты. Но для этого необходимо настроить почтовый smtp сервер, который будет отправлять почту.
img
Насколько часто вы попадаете в замкнутый цикл из ошибок при разработке приложения в PHP? Ошибка исчезает, а потом появляется в другом блоке кода, или баги постоянно сменяют друг друга. Самое неприятное обстоятельство - вернуться к багу, который был исправлен несколько часов назад. Когда отлаживание алгоритма начинает приносить раздражение - о конструктивном подходе к задаче можно забыть. Именно для того, чтобы не дать вам забросить перспективную разработку или просто выполнить поставленную задачу, существует возможность использовать PHPUnit тестирование. Что такое PHPUnit тестирование? С Unit или же "модулем" плотно связано понимание процесса тестирования. Модуль - это работающая часть кода, функционал которой можно протестировать автономно. Соответственно, PHPUnit тестирование представляет собой последовательную проверку всех модулей приложения на корректность выполнения их алгоритмов. Тесты можно прописать один раз и впоследствии использовать после внесения любых изменений. Преимущества модульного тестирования Вот несколько неоспоримых преимуществ Unit-тестирования: Оперативная проверка правок. Довольно удобно проверять работоспособность модуля немедленно после его изменения. Операция займет несколько секунд. Облегченная передача кода другому разработчику. Если вы прекратили разработку продукта и ее продолжит другой специалист, то процесс передачи пройдет намного легче. Безопасное редактирование. Если вы боитесь, что изменения модулей могут повлечь за собой глобальную проблему для системы в целом, то без предложенного Unit-тестирования обойтись будет очень сложно. Использование PHPUnit тестирования Использовать модульное тестирование достаточно просто. Ниже будет описано, как установить и запустить первый тест. Установка Элементарный способ установить библиотеку PHPUnit - выгрузить его по каналу PEAR. Для этого нужно вписать: "1 pear config-set auto_discover 1" "2 pear install pear.phpunit.de/PHPUnit" Для пользователей, которые хотят иметь углубленное понимание по этому процессу подойдет ручной вариант установки через официальный сайт PHPUnit. Запуск Любой тест запускается при помощи вызова команды phpunit. Укажите php-файл как в примере ниже: "1 phpunit /path/to/tests/RemoteConnectTest.php" После этого, запущенный тест вернет результат: "1 PHPUnit 2.5 by Aloizii MagaRich" "2 ." "3 Time: 1 second" "4 Tests: 1, Assertions: 1, Failures 0" Итог представляет из себя краткие статистические данные по работе теста, такие как время операции, количество тестов, утверждений и ошибок. Также во второй строке можно заметить знак ".", сигнализирующий о том, что тест завершился успешно. Это общий итог операции. Ниже представлены другие варианты вывода, если тест: "F" - не выполнен. "I" - невозможно закончить. "S" - пропущен. Стандартные тесты Также приведем список стандартных вариантов тестирования, которые можно использовать в 80% ситуаций. Название каждого теста начинается с упомянутого ранее утверждения или Assert: "True/AssertFalse". Используется для выявления корректности значений на соответствие true/false. "Equals". Проверяет равенство. "GreaterThan". Сопоставляет переменные (присутствует большее количество вариаций этого сравнения). "Contains". Тестирует правильность содержания переменной. "Type". Исследует тип переменной. "Null". Проверяет равенство null. "FileExists". Подтверждает существование файла. "RegExp". Тестирует регулярность выражения. Модульное тестирование: почему нет? Почему все разработчики не используют PHPUnit тестирование? Закономерный вопрос, когда дело касается такого эффективного инструмента. Вот несколько распространенных причин: Тестирование затратно по времени. Написание строк с тестом занимает время, которое можно было уделить построению общей структуры приложения. Однако в конечном счете продукт будет дополняться. Несколько часов добавления теста на раннем этапе сэкономит больше времени на стадии доработки или сопровождения. Использовать модульные тесты - скучно. Конечно, прогонять проверку каждого модуля в большой разработке - это рутина, особенно по сравнению с ее созданием. Но поддержка 100% работоспособности - это элемент такта, который может позволить себе только настоящий профессионал. Уверенность в то, что код будет работать без проверок. Возможно, что автор досконально знает свой код и может оперативно исправить любой баг. Однако если с приложением будет работать другой человек, то не факт, что он сможет вникнуть во все нюансы так же быстро. Как можно заметить, все причины, перечисленные выше, скорее, продиктованы ленью и непониманием предмета, нежели практичностью и здравым смыслом.
img
Nginx - это веб-сервер на базе Linux и прокси-приложение. Nginx - это мощный инструмент для перенаправления и управления веб-трафиком. Его можно легко настроить для перенаправления незашифрованного веб-трафика HTTP на зашифрованный HTTPS-сервер. Это руководство покажет вам, как перенаправить HTTP на HTTPS с помощью Nginx. Что нам потребуется Сервер Linux под управлением Nginx Учетная запись пользователя с привилегиями sudo Удаленный вход на веб-сервер (необязательно, требуется только в том случае, если вы не работаете непосредственно с веб-сервером) Доступ к терминалу/командной строке (Ctrl-Alt-T или Ctrl-Alt-F2) Редирект с HTTP на HTTPS Для принудительного перенаправления HTTP на HTTPS вам необходимо отредактировать файл конфигурации Nginx. В большинстве случаев вы можете найти этот файл в каталоге /etc/nginx/sites-available. Если не найдено, найдите его здесь: /etc/nginx/nginx.conf, /usr/local/nginx/conf или /usr/local/etc/nginx. Найдя файл конфигурации Nginx, откройте его в текстовом редакторе с помощью команды: sudo nano /etc/nginx/sites-available/server.conf Замените местоположение фактическим местоположением и именем вашего файла конфигурации. Когда файл конфигурации будет открыт для редактирования, вставьте один из блоков кода ниже. Как только вы закончите редактирование, сохраните файл и выйдите. Затем перезапустите службу Nginx с помощью следующей команды: sudo service nginx restart Перенаправить весь HTTP-трафик на HTTPS Откройте файл конфигурации Nginx для редактирования, затем вставьте следующий код: server { listen 80 default_server; server_name _; return 301 https://$host$request_uri; } Вот разбивка команд: Listen 80: Это дает команду системе перехватывать весь HTTP-трафик через порт 80 Server_name _ ;: Это будет соответствовать любому имени хоста Return 301: Это говорит браузеру и поисковым системам, что это постоянное перенаправление https://$host$request_uri: Это короткий код для указания версии HTTPS того, что набрал пользователь После редактирования весь трафик сервера HTTP по умолчанию перенаправляется на HTTPS. Примечание: Это должен быть единственный блок сервера, прослушивающий порт 80. Блок сервера - это единица кода конфигурации в Nginx. Он помечен именем и фигурными скобками. Перенаправить определенный сайт У вас может быть несколько серверов, но только некоторые из них могут требовать HTTPS. Укажите имя сервера в блоке сервера для перенаправления выбранного трафика: server { listen 80 default_server; server_name my_app.com; return 301 https://my_app.com$request_uri; } Замените имя my_app.com на имя сервера, который вы собираетесь перенаправить. Вы также можете добавить дополнительные сайты, добавив еще один блок сервера. Просто скопируйте код и измените имя сервера. Принимать только SSL-соединения Добавьте этот код, чтобы убедиться, что сервер будет принимать только SSL-соединения через порт 443: server { listen 443 ssl default_server; server_name my_app.com; } server { listen 443 ssl; server_name my_website.com; } Этот блок кода настроит два веб-сайта, my_app.com и my_website.com, на прием только SSL-соединений. Вы можете добавить дополнительные сайты, используя дополнительные блоки серверов. Редирект страниц Вы можете использовать rewrite для быстрого управления 301 (постоянным) или 302 (временным) перенаправлением: Location /index.html { rewrite ^/oldURL$ https://www.your_domain.com/newURL redirect; } В большинстве случаев это будет index.html, но вы можете указать любой путь или шаблон. Обратите внимание, что команда rewrite должна использоваться только с перенаправлениями 301 или 302. Как перенаправить домен с помощью Nginx Это полезно, если вы сменили домен (например с .org на .com). Nginx также можно использовать для перенаправления со старого доменного имени на новое доменное имя. server { listen 80; listen 443 ssl; server_name www.old_company.com; return 301 $scheme://www.new_company.com$request_uri; } В большинстве случаев команда return предпочтительнее команды rewrite. Редирект с сайта www на сайт без www Этот процесс аналогичен стандартному перенаправлению страницы: server { server_name www.new_company.com; return 301 $scheme://new_company.com$request_uri; } Причины для перенаправления трафика Есть несколько причин для перенаправления HTTP-трафика на HTTPS: Принудительное установление более безопасного зашифрованного соединения. Сохранение страницы с хорошим SEO-рейтингом, но перенаправление своего трафика на новую страницу. Уведомлять и временно отправлять трафик на страницу «на обслуживании». Постоянно отправлять трафик с одного сайта на другой, например после корпоративного слияния. Заключение Теперь вы знаете, как перенаправить HTTP на HTTPS в Nginx. Редактируя файл конфигурации, вы можете отправлять трафик из определенного места назначения на другой сайт и принудительно использовать сертификаты SSL. Это поможет вам безопасно управлять изменениями на вашем сайте, не нарушая пользовательский опыт.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59