Ответы пользователя по тегу PHP
  • Какой IP у исходящих PHP запросов?

    @brar
    Из консоли узнать "свой" айпи можно так:
    wget https://ipinfo.io -qO-
    Если они динамические, то конечно, каждый раз слать новые в техподдержку api нет смысла.
    Ответ написан
  • SMTP PHP yandex.ru Пароль не был принят сервером как верный! Как исправить?

    @brar
    Возможно, yandex заблокировал попытки входа. Они так делают иногда, заставляя привязать телефонный номер. Надо зайти через вэб и подтвредить, на телефон придет код подтверждения.
    Ссылку конкретно не помню (она у меня в ответе сервера smpt пришла, что-то типа ya.cc/blablabla ).
    Ну или второй вариант попробовать использовать другой ящик, который точно работает в почтовом клиенте.
    Естественно, это не единственный вариант вашей проблемы.

    Также попробуйте просто скрипт:
    <?php
    require_once ( '/usr/share/php/libphp-phpmailer/autoload.php' ); // Убедитесь в этом пути.
    
    //$mail = new PHPMailer;
    $mail = new PHPMailer\PHPMailer\PHPMailer();
    
    //Enable SMTP debugging. 
    $mail->SMTPDebug = 3;                               
    //Set PHPMailer to use SMTP.
    $mail->isSMTP();            
    //Set SMTP host name                          
    $mail->Host = "smtp.yandex.ru";
    //Set this to true if SMTP host requires authentication to send email
    $mail->SMTPAuth = true;                          
    //Provide username and password     
    $mail->Username = "ВАШ_ЯЩИК";                 
    $mail->Password = "ВАШ_ПАРОЛЬ";                           
    
    $mail->SMTPSecure = "ssl";                           
    //Set TCP port to connect to 
    $mail->Port = 465;                                   
    $mail->From = "ВАШ_ЯЩИК";
    $mail->FromName = "пофигу_что_тут";
    $mail->addAddress("ЯЩИК_АДРЕСАТА");
    $mail->isHTML(true);
    $mail->Subject = "Test MAIL 1";
    $mail->Body = "<i>from сonsole</i>";
    $mail->AltBody = "This is the plain text version of the email content";
    if(!$mail->send()) 
    {
        echo "Mailer Error: " . $mail->ErrorInfo;
    } 
    else 
    {
        echo "Message has been sent successfully";
    }

    Нужно убедиться, что PHPMailer установлен.
    Скрипт стопудово рабочий, только что проверил.
    Ответ написан
    Комментировать
  • Как изменить символические ссылки на файлы?

    @brar
    grep -rl старое_имя_домена /путь/к/каталогу_сайта/
    Выведет все файлы, внутри которых встречается старое имя домена. Если их мало, можете руками поменять на новое имя домена.

    find /путь/к/каталогу_сайта/ -type f -exec sed -i 's/https\:\/\/старое_имя_домена.ru/https\:\/\/новое_имя_домена.ru/g' {} +

    Заменит все встречающиеся старое_имя_домена на новое_имя_домена.

    Однако, стоит отметить, что указание абсолютных ссылок адреса сайта внутри кода - моветон. Нужно использовать относительные ссылки - а точнее просто слэш. (правильно настроенный вебсервер будет воспринимать его, как правильный путь).

    P.S. Предварительный бэкап не збудьте.
    Ответ написан
  • Почему до пользователей долго доходит письмо на e-mail?

    @brar
    Перейдите с php(mail) на SMTP (c авторизацией на почтовом сервере).
    Также, полезным будет настроить в днс для своего домена DKIM и SPF.
    Ответ написан
  • Порекомендует план обучения ngnix или как поднять веб-сервер?

    @brar
    Связка сервисов nginx+php+*sql - имеет абревиатуру LEMP.
    Связка сервисов apache+php+*sql - имеет абревиатуру LAMP.
    Соотвественно, Вам нужно гуглить первое.

    https://lemp.io/
    https://1cloud.ru/help/linux/Kak-ustanovit-LEMP-st...
    https://www.digitalocean.com/community/tutorials/l...

    итд.
    Установка зависит есесно от дистрибутива.
    Ответ написан
    Комментировать
  • Как связать звонки телефона на IP ATC с БД?

    @brar
    В астериске делается с помощью DB_EXISTS (в его родную базу). Настройка этого зависит от логики атс в целом. То есть нельзя сказать прям точно, как это надо делать в вашем случае. В общем, смотрите в сторону https://wiki.asterisk.org/wiki/display/AST/Functio...
    Ответ написан
    Комментировать