Posted on 19 августа, 2020
Перенос ispmanager на новый сервер Ubuntu
Если вы переносите ispmanager на новый сервер, на забудьте поменять настройки сети в файле:
/etc/network/interfaces
IP-адрес нового сервера — xx.xxx.xxx.xx (+ xxxx:xxxx:xxxx:xx:x:xx:x:xxx)
Маска — xxx.xxx.xxx.x
gateway — xx.xxx.xxx.x
*x поменяйте на свои значения
Posted on 19 августа, 2020
Как выйти из командной строки mysql
Пользователи часто сталкиваются с тем что не могут выйти из режима командной строки mysql. Стандартные команды не помогают:
exit
CtrlC
CtrlD
quit
Ctrl
CtrlZ
bye
Выход можно осуществить по:
Ctrl+Shift+D
Posted on 9 июля, 2020
Консоль Ubuntu для веб разработчика
Перемещение по файловой системе выполняется командой cd
cd etc/
просмотр содержимого каталога выполняется командой ls
ls
просмотр содержимого файла выполняется командой nl
nl apache2.conf
Переименование файла выполняется командой mv. (По сути эта команда выполняет перемещение файла)
mv apache2.conf apache2.conf.system-old
Копирование файла команда cp
cp
Создание каталога команда mkdir
mkdir
Редактор vi
Редактировать файлы будем с помощью vi
vi file.name
чтобы войти в режим редактирования текста нажмем i
выход из режима редактирования ESC
Сохранить изменения и выйти :wq
Выход без сохранения :q!
Редактор Nano
nano file.name
Выйти и сохранить
Ctrl-x затем Y затем Enter
Выделить и удалить несколько строк в редактируемом файле
Alt-A устанавливает метку, далее мотаем курсором, чтобы выделить нужный фрагмент. Затем жмем Ctrl-K чтобы удалить выделенное.
Как найти папку или файл по имени?
find / -type d -name 'foldernames'
/
— искать по всей системе, то есть начинать с точки монтирования «/»
-type d
— искать только папки
-name 'workers'
— в данном случае точное совпадение с workers
Как найти файл по части имени?
find / -type f -name '*filenames'
/
— искать по всей системе, то есть начинать с точки монтирования «/»
-type f
— искать только файлы
-name '*filenames'
— в данном случае все, что заканчивается на «filenames»
Веб-сервер Apache
Рестарт сервера
/etc/init.d/apache2 restart
Веб-сервер Enginx
Рестарт сервера
/etc/init.d/nginx restart
Posted on 25 июня, 2020
PHP строгая типизация
В php функциях лучше избегать ситуаций когда функция принимает не пойми что, и возвращает не пойми что. Поэтому мы будем использовать строгую типизацию. К примеру у нас есть функция проверяющая какой-то id:
function checkId(string $id) : bool {...
мы явно задаем, что входной параметр у нас имеет тип string. А возвращает функция данные типа bool.
Posted on 16 июня, 2020
Аутентификация Laravel
Laravel содержит в себе практически готовую систему аутентификации. Развернуть ее можно командой:
php artisan make:auth
Эта команда сформирует шаблоны (view) для аутентификации. Они распологаются в папке auth. А также специальные контроллеры, которые содержатся в папке Auth, в разделе контроллеров.
Шаблоны аутентификации
login.blade.php — отвечает за отображение формы ввода пароля и логина
register.blade.php — отвечает за отображение формы регистрации.
password\reset.blade.php — страница сброса пароля
Как закрыть доступ к определенному разделу сайта?
Для того, чтобы дать доступ только зарегистрированным пользователям, нужно в маршрут добавить посредник ‘middleware’=>[‘web’,’auth’]
группа посредников web перед auth нужна для запуска механизма сессий, перед запуском механизма аутентификации (auth). Напомню, что посредники передают управление по цепочке. То есть сначала отработает посредник web. А затем он передаст управление посреднику auth.
Продолжим. К примеру мы хотим закрыть доступ в раздел profile. В маршруте этого раздела укажем:
Route::group(['prefix'=>'profile', 'middleware'=>['web','auth']], function() {..
.
Posted on 22 мая, 2020
MySql заполнение столбца таблицы данными из другой таблицы
Если вам нужен пример запроса то вот он:
UPDATE table_1, table_2
SET table_1.data_1 = table_2.date_2
WHERE table_1.data_1_1 = table_2.data_2_2
А теперь немного пояснения. В блоке UPDATE мы указываем название обеих таблиц. В блоке SET мы указываем в какое поле таблицы.1 мы будем записывать данные из таблицы.2 (и указываем из какого поля). В блоке WHERE мы указываем какие данные из какие данные из таблицы.1 должны соответствовать данным из таблицы.2
Posted on 14 мая, 2020
Выборка из 2х таблиц MySql
Выбрать однотипные данные из 2х таблиц, можно запросом
SELECT user, name FROM Customers UNION SELECT user, name FROM Employees;
Мы с помощью Union объединяем два запроса. В результате получим данные полей user и name из 2х таблиц Customers и Employees за исключением дублей. То есть если данные полностью совпадут, и результат попадет только одно совпадение.
Posted on 5 марта, 2020
Laravel создать модель, контроллер и миграцию одной командой
Модель миграцию и контроллер проще всего создать одной командой:
php artisan make:model MyModel -mcr
Posted on 5 марта, 2020
Добавить данные в seeds
Чтобы добавить данные в seeds нужно выполнить команду:
php artisan db:seed --class=НазваниеВашегоКласса