• Почему не работает внутреняя авторизация на nginx ларавел?

    Иван, вот и разгадка. Веб-приложение не просто использует тот же заголовок для авторизации, но и вообще использует для авторизации тот же механизм - basic. Тут точо сменить заголовок не получится.
    Но зато вы можете написать свой middleware вместо этого, который, если сайт на бою, проверяет авторизацию, а если на dev-сервере, то ничего не делает и не мешает авторизации nginx.
    Написано
  • Почему не работает внутреняя авторизация на nginx ларавел?

    youmixx, basic авторизация работает через заголовок Authorization.
    Его устанавливает браузер и отслеживает nginx.
    Ну а в веб-приложении этот же заговок скорее всего устанавливается в JS коде, а обрабатывается каким-нибудь middleware.
    Написано
  • Почему не работает внутреняя авторизация на nginx ларавел?

    youmixx, это хорошо что вы редактируете код на dev сервере и закрываете его авторизацией, так и надо. Так все делают. И по хорошему, ваш сайт должен быть готов к тому, чего его могут запустить в разных окружениях с немного разными настройками. Учитывая что вы используете laravel, вам не составит труда добавить т.н. env переменную, которая включает и отключает полное закрытие сайта авторизацией. Я не говорю что именно так и нужно сделать, но фраза "у меня гит и боевой сайт тоже получит эти настройки" не является оправданием.

    Изменить используемый заголовок не всегда возможно. Нужно править код, а он может быть не ваш - ну там пакет какой-нибудь установлен.
    Написано
  • Как отдавать docker container с сервера по адресу домена?

    bengur2, чтобы по разным доменам открывались разные веб-приложения, вам необходим http прокси, который на основании домена, указанного в http запросе, будет проксировать этот запрос на тот или иной внутренний адрес.
    Обычно для этого устанавливают nginx, который сам слушает 80 и 443 порты.
    Все домены настраивают так, чтобы вели на адрес этого сервера.
    В конфиге nginx описывают какое приложение должно отвечать по определённому домену, примерно вот так:
    server {
        listen 80;
        server_name site-1.domain.com;
        location / {
            proxy_pass http://127.0.0.1:27073;
        }
    }
    server {
        listen 80;
        server_name site-2.domain.com;
        location / {
            proxy_pass http://127.0.0.1:12345;
        }
    }


    Однако если у вас контейнер на сервере и по 127.0.0.1:27073 не отвечает, то сначала нужно решить эту проблему.
    Написано
  • Как отдавать docker container с сервера по адресу домена?

    bengur2, адрес 0.0.0.0 указывается чтобы показать, что сервис слушает порт на всех адресах. Проверять его бессмысленно, нужно проверять конкретный адрес сервера - тот что вы прописали в dns. Надеюсь в dns вы прописали именно публичный ip этой машины.

    Проверка localhost показывает что порт недоступен. Возможно подключение на него закрыто через файрвол.

    Почему вы вообще используете нестандартный порт для веб-приложения?
    Написано
  • Как отдавать docker container с сервера по адресу домена?

    bengur2, 504 это код ответа протокола http. А вы публикуете 5000 порт контейнера как 27073 порт машины. Вы уверены что там внутри веб-приложение, а не что-то другое?
    Если да, то ещё интересно как именно вы проверяете доступность.
    Ну т.е. в браузере вводите домен? В порт указываете? Если не указть, то порт будет подставлен по умолчанию - 80 или 443 в зависимости от протокола http/https.
    Ещё информация о привязке домена к ip адресу может обновляться довольно долго. Может даже несколько часов. А ещё браузер может кэшировать старое значение для этого домена.

    Чтобы проверить что информация о домене обновилась, нужно использовать программы dig/nslookup.
    После того как убедитесь что домен ведёт на нужный ip, перезапустите браузер.
    Вводя адрес указывайте порт, т.к. у вас он нестандартный.
    Если результат вас не удовлетворяет, проверьте доступность порта используя telnet или nc.
    Если не доступен, то нужно будет смотреть на сервере, может он закрыт.
    Написано
  • Как добавить приватный ключ в SSH Agent навсегда?

    Евгений Заливадный, пароль осложняет дело. Вообще я имел в виду добавление ключа в агент при включении компьютера. Там уже есть варианты как делать, например через profile, который выполняется только при login, а не при каждом открытии консоли. Ну или systemd юнит написать.
    Наверное есть способ эмулировать ввод пароля средствами bash, однако это идёт против самой идеи запароленного ключа.

    Что касается .bashrc, то этот вариант тоже можно использовать, и в случае с паролем, возможно именно он и нужен. Просто нужно написать немного кода, который проверит наличие ключа в агенте, и добавит если его нет. Т.е. ввод пароля будет только при первом открытии терминала.
  • Как добавить приватный ключ в SSH Agent навсегда?

    Не уверен что это сработает. Тут указывается ключ, который нужно использовать при подключении, но ssh клиент может и не регистрировать его в агенте.
    Это логично если подумать о безопасности - совсем не обязательно это же ключ будет необходим для доступа на конечный сервер, так зачем светить его через агент?
  • Могу ли я читать данные в Nginx?

    tem12qaz, вы можете вынести map в отдельный файл, генерировать его чем хотите, и в этот момент посылать nginx'у сигнал чтобы он перечитал конфиг.
  • Могу ли я читать данные в Nginx?

    tem12qaz, вам стоит описать подробнее ваш случай.
    Из того что указано в тексте вопроса можно сделать вывод, что вам достаточно функций nginx
  • Можно ли использовать WebpackDevServer на продакшене?

    outplayedrq, стоит отметить, что хотя необходимость изучать смежные технологии зависит от размера компании, и где-то фронтендер не может знать про сервера, а где-то бэкендер может не знать про фронт, но всё же, на каком-то базовом уровне понимать что будет происходить с приложением дальше, полезно.
    Если же вы в одиночку разрабатываете, то вам просто необходимо уметь и web-сервер настроить, и СУБД установить, и много чего ещё.
  • Как я могу связать BackEnd с FrontEnd?

    outplayedrq, да, конечно, webpack dev server подойдёт.
    Тут главно не забывать, что бэк надо запускать отдельно и ajax запросы надо делать на адрес бэка.
  • Как я могу связать BackEnd с FrontEnd?

    outplayedrq, отладочный сервер про который я писал - это только чтобы раздавать статику. Только чтобы в браузере вы открывали localhost:8080 а не file:///path/to/dist
    Такой сервер никоим образом не способствует связи фронта с бэком.
    Вот пример такого сервера https://www.npmjs.com/package/serve
  • Как я могу связать BackEnd с FrontEnd?

    outplayedrq, не совсем. У вас просто какой-то веб-сервер должен раздавать результаты сборки фронта.
    Это не обязательно дополнительный сервер, но может быть и так. В зависимости от выбранного подхода надо будет делать ajax запросы на тот же или на другой домен (точнее порт).
    Используйте раздачу статики через express вашего бэка и не парьтесь.

    axios это универсальный http клиент. Он работает как в браузере, так и в nodejs. Если ваш бэк должен делать куда-то запросы - ну пусть делает, axios тут хороший выбор.
    А если вы придумываете как делать запросы с фронта на бэк, то вам не надо думать про axios на бэке, просто используйте его на фронте.

    P.S. по вопросу "fetch vs axios" не подскажу. Как вам удобнее делать ajax запросы так и делайте. Я бы делал через axios, потому что я с ним итак работаю, и мне кажется что у него больше настроек.
  • Github, Как отправить файлы на удаленный репо, если сменил название локальной папки проекта?

    JZorkiy, git - это децентрализованная система контроля версий.
    Т.е. ваш локальный репозиторий, и тот что на сервере гитхаба на самом деле оба являются полноценными и даже независимыми. Но вы можете связать репозитории. Точнее ветки.
    Обычно это происходит автоматически.
    Вы можете привязать локальную ветку даже к нескольким друим репозиториям.
    Традиционно первый удалённый репозиторий назывется origin.
    И чтобы отличить локальную ветку от такой же, но в связанном репозитории, к её названию добавляется название удалённого репозитория.
    У вас ветка main связана с веткой origin/main, и впринципе для любой другой локальной ветки может существовать её "клон" если вы эту ветку пушили на гитхаб.
  • Github, Как отправить файлы на удаленный репо, если сменил название локальной папки проекта?

    JZorkiy, ну вот, у вас тоже нет локальных путей в конфиге. Может вы не только имя папки сменили?) Может ещё и ось переустановили потеряв ключ?
    Так или иначе, если вы выполняете команду в консоли, то в ответ вам должна показаться ошибка. В её тексте мы найдём подсказку.
  • Github, Как отправить файлы на удаленный репо, если сменил название локальной папки проекта?

    JZorkiy, раз так, то что-то не так. Консольный гит как раз не должен реагировать на смену папки.
    Я посмотрел .git/config у себя и не нашёл там локальных путей, хотя, возможно, у вас там есть какие-то непривычные мне опции.
    Было бы интересно посмотреть на ваш конфиг.
    Ну и вообще, так-то нужно больше подробностей - какую команду выполняете чтобы отправить изменения, какую ошибку пишет гит.
  • Как реализовать корзину на LARAVEL?

    turindd, если говорить о самом общем случае, то корзина это не заказ.
    У заказа обычно больше полей. Как вы праивльно отметили - товары заказа это не те же товары что и на витрине, у них фиксированные параметры.
    Так что совсем идеально было бы разделить корзину и заказ. В момент оформления заказа данные корзины копируются и дополняются.
    Но в большинстве случаев можно обойтись и без этого. В моей практике обычно бывает baskets, basket_items и orders. Последняя таблица хранит данные о заказе и указывает на запись из baskets.

    По поводу разных браузеров - да, корзина через сессию будет видна только в одном.
    Но это никак не исправить. Пока пользователь не авторизован, вы никак не можете понять что с разных браузеров сидит именно он. Никакие вычисления по ip или фингерпринты не дадут вам точной идентифкации. Но обычно люди не меняют браузер каждые 5 минут) Это не тот кейс, на обдумывание которого надо тратить много времени.
    А если вам это важно - заставьте пользователя авторизоваться перед тем как класть товар в корзину.
  • В чем разница kubectl run и kubectl create deployment?

    Benedictus, Вероятно автор поста просто случайно дал неверную информацию.
    У меня эта команда выдаёт pod/hello-minikube created, что соотвествует её описанию:
    $ kubectl run --help
    Create and run a particular image in a pod.