Ответы пользователя по тегу PHP
  • Как установить на macOS Sonoma ext-mcrypt для PHP 7.4?

    lamo4ok
    @lamo4ok Автор вопроса
    Программист
    Решение найдено, нужно просто отредактировать формулу и после запустить ее без обращения к API:

    brew edit mcrypt

    Находим там строку с !disabled в начале и удаляем ее.

    Запускаем установку:

    HOMEBREW_NO_INSTALL_FROM_API=1 brew install mcrypt
    Ответ написан
    Комментировать
  • Почему отправленное письмо с помощью php скрипта попадает в спам?

    lamo4ok
    @lamo4ok
    Программист
    Код, который вы используете, шлёт письма без авторизации на каком-либо из почтовых серверов. Если только у вас не настроена отправка с авторизацией по ip. Чтобы вашим письмам доверяли, необходимо множество вещей, если вы захотите настроить свой собственный почтовый сервер, и только одна, если вы будете делать авторизацию на каком-либо уже настроенном публичном. Домен при этом может быть в адресе отправителя либо ваш, либо, если это не принципиально, этого публичного сервера. Про настройку своего домена на Яндексе или где-то ещё написано немало. В итоге вам нужен скрипт, который будет уметь в авторизацию по SMTP. Выше уже говорили про стандарт в таких вещах, phpmailer. Найдите примеры его использования, и все.
    Ответ написан
    Комментировать
  • WordPress: как организовать получение cid из GA в плагине?

    lamo4ok
    @lamo4ok Автор вопроса
    Программист
    Ответ был найден тут.
    Ответ написан
    Комментировать
  • В чем может быть разница между двумя серверами, по-разному обрабатывающими сброс буфера в php?

    lamo4ok
    @lamo4ok Автор вопроса
    Программист
    Что ж, изучение мануалов и тесты дали о себе знать. Вот такой код заработал как нужно:
    header("HTTP/1.1 200 OK");
    header("Connection: close");
    ob_start();
    phpinfo();
    $size = ob_get_length();
    header("Content-Length: $size");
    ob_flush();
    sleep(2);
    echo __FILE__."<br>";

    с таким вот .htaccess:
    <FilesMatch \.php$>
        SetEnv no-gzip 1
    </FilesMatch>

    Что нужно было?

    1. В .htaccess нужно было оставить только лишь отключение gzip для php файлов, оказывается - он все-таки был включен и это влияет на то, какими порциями веб-сервер будет отдавать контент, не смотря на мой код.

    2. Была найдена разница в конфигах серверов, переменная output_buffering на сервере, который обрабатывал код так, не как ожидалось, эта переменная имеет значение no value (на "правильном" сервере это значение установлено в 4096).
    Возможно, в итоге размер буфера берется откуда-то еще и в итоге страницы, на которых я пытался выводить сначала какую-то одинокую строчку, просто не отдавались из буфера на вывод. Как только я увеличил объем страницы, сделав php_info(), все встало на свои места. Вердикт - надо либо отдавать страницу большего размера (костыль), либо изменить настройки работы с буфером таким образом, чтобы функция ob_flush() гарантированно производила отправку содержимого буфера клиенту.
    Ответ написан
    Комментировать
  • Отправка формы на вордпресс, не приходит сообщение на почту, хелп?

    lamo4ok
    @lamo4ok
    Программист
    Я бы поставил на то, что у вас shared хостинг и там банально закрыты порты для отправки почты, 25, 465, 587. Это при условии, что вы все верно настроили для отправки почты через smtp, хотя на самом деле и без этого письма в большинстве случаев приходят от таких сайтов, просто попадают в спам.

    Попробуйте вместо вашего текущего плагина использовать WP Postman SMTP и в нем использовать авторизацию через Google API. В плагине есть инструкция с видео, как это настроить. Если проблема в закрытых портах, то с помощью этого плагина вам удастся ее решить. Так или иначе, он ведет лог отправленных писем, в котором можно посмотреть, какая именно ошибка происходит, плюс есть вариант самотестирования, в котором вы также сможете увидеть, на какой стадии отправки почты происходит ошибка.
    Ответ написан
    Комментировать