Очень счастливо почтовая программа MS-SQL действительно поддерживает Автора SMTP, таким образом, достаточно умно на самом деле войти в систему сервера SMTP прежде, чем отправить почту. Как почтовый администратор, это делает меня счастливым.
Единственный недостаток является регулярной старой почтовой перегрузкой, или если сервер генерирует столько предупреждений, что это так или иначе перегружает почтовую программу (вряд ли).
Та же проблема возникла в Ubuntu 12.04.1 LTS
и была решена с помощью команды:
sudo apt-get install libcurl4-openssl-dev pkg -config
Чтобы собрать php-5.3 на Debian wheezy, вам понадобится следующее, чтобы исправить эту ошибку.
apt-get install libssl-dev libsslcommon2-dev
Затем вам необходимо настроить следующие параметры:
./configure --with-libdir=/lib/x86_64-linux-gnu ...
Для компиляции php-5.4.45 на debian 8.1 (Джесси) мне пришлось:
apt-get install libssl-dev
После этого я мог скомпилировать его, просто используя - with-openssl
Предполагая, что у вас уже есть библиотеки OpenSSL и файлы заголовков (в системах rpm последние находятся в пакете xxxx-devel) ...
Проблема, похоже, возникает из-за того, как configure
разрешает зависимости, которые распределены по файловой системе. Чтобы скомпилировать код, компилятор должен знать, где находятся заголовки. Чтобы связать код, компоновщик должен знать, где находятся библиотеки.
[colin@host]$ configure .... --with-openssl-dir=/usr/include/openssl ....
...
checking OpenSSL dir for FTP... /usr/include/openssl
checking for pkg-config... /usr/bin/pkg-config
configure: error: Cannot find OpenSSL's <evp.h>
[colin@host]$ find /usr/include -name evp.h
/usr/include/openssl/evp.h
В каталоге include есть включаемый файл, но pkg-config не работает, потому что библиотека находится , а не в / usr / include / openssl, его в / usr / lib
Повторный запуск configure с / usr в качестве каталога:
configure .... --with-openssl-dir=/usr ....
...
checking OpenSSL dir for FTP... /usr
checking for pkg-config... /usr/bin/pkg-config
checking for OpenSSL version... >= 0.9.6
checking for CRYPTO_free in -lcrypto... yes
...
Путь, переданный в качестве аргумента, ищется, чтобы найти соответствующие ресурсы.
Другая причина, по которой ./ configure
может не сработать, заключается в том, что у вас не установлен pkg-config
, как в моем случай с PHP7 и Debian Jessie:
sudo apt-get install pkg-config
Вам нужно помочь настроить выяснение, где искать файл evp.h, потому что по умолчанию он будет сканировать каталоги и добавлять к ним жестко заданные суффиксы, чтобы найти его. Я сохранил подробности на моей вики-странице для тех, кто хочет понять решение. Вот что у меня сработало:
root@audio-mon[10.10.10.82] ~/DOWNLOADS/php-5.5.23/ext/mysqlnd # PHP_OPENSSL_DIR="/usr /usr/lib/x86_64-linux-gnu"
root@audio-mon[10.10.10.82] ~/DOWNLOADS/php-5.5.23/ext/mysqlnd # ./configure --with-libdir=""
[...]
checking for DSA_get_default_method in -lssl... yes
checking for X509_free in -lcrypto... yes
checking for pkg-config... /usr/bin/pkg-config
checking for OpenSSL version... >= 0.9.6 # <------------------------------------- YES !
[...]
config.status: creating config.h
config.status: config.h is unchanged
root@audio-mon[10.10.10.82] ~/DOWNLOADS/php-5.5.23/ext/mysqlnd #
YMMV (пути разные). Если это не сработало для вас , проверьте страницу вики , это поможет вам выяснить, какие пути ввести.
הייתה לי אותה בעיה בפדורה 19 למרות שהתקנת OpenSSL.
הייתי צריך להתקין openssl-devel.i686 שמצאתי על ידי חיפוש כללי של כל החבילות הקשורות ל- ssl:
sudo yum search ssl
sudo yum install openssl-devel.i686
ואז רצתי להגדיר שוב את התצורה בהצלחה:
sudo ./configure --with-apxs2=/usr/bin/apxs --with-mysql --enable-mbstring --with-mysqli --with-openssl=/usr/
Только мой отзыв: после решения этой проблемы с ssl из этого поста я полностью отказался от компиляции php 5.3, потому что он потерпел неудачу на расширениях zend dom посередине, я обнаружил какие-то патчи, и решил просто отбросить эту возню. Есть ubuntu 12.04, в котором все еще есть 5.3.10 php. Будьте осторожны, тогда php-fpm очищал переменные среды. Так что не удивляйтесь, если, например, вы не можете передать глобальные переменные из докера.
Я исправил проблему, установив дополнительные библиотеки
sudo apt-get install -y autoconf g++ make openssl libssl-dev libcurl4-openssl-dev
sudo apt-get install -y libcurl4-openssl-dev pkg-config
sudo apt-get install -y libsasl2-dev