Есть система lfs версии 7.0
В ней из исходников собран apache версии 2.4.18 и php версии 5.5.13
Мне нужен был только модуль для apache и не нужен был php интерпретатор, но собрать без интерпретатора так и не получилось (в моём вопросе отправки почты - интерпретатор, помог выяснить некоторый вопрос), собирал несколько раз, то собрал без графической библиотеки и капча не работала, то ещё без каких то библиотек. На сборку потратил кучу времени, но в конце концов собрал и всё заработало.
Собирал apache вот с такими опциями:
CODE (
text):
скопировать код в буфер обмена
./configure --enable-authnz-fcgi \
--enable-layout=LFS \
--enable-mods-shared="all cgi" \
--enable-mpms-shared=all \
--with-apr=/usr/bin/apr-1-config \
--with-apr-util=/usr/bin/apu-1-config \
--enable-suexec=shared \
--with-suexec-bin=/usr/lib/httpd/suexec \
--with-suexec-docroot=/srv/apache \
--with-suexec-caller=apache \
--with-suexec-userdir=public_html \
--with-suexec-logfile=/var/log/httpd/suexec.log \
--with-suexec-uidmin=100
php собирал вот с такими опциями:
CODE (
text):
скопировать код в буфер обмена
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--with-apxs2=/usr/bin/apxs \
--datadir=/usr/share/php \
--mandir=/usr/share/man \
--disable-ipv6 \
--enable-dba \
--enable-dba=shared \
--with-gdbm \
--enable-maintainer-zts \
--enable-fpm \
--with-fpm-user=apache \
--with-fpm-group=apache \
--with-config-file-path=/etc \
--with-pcre-regex=/usr \
--with-zlib \
--enable-bcmath \
--with-bz2 \
--enable-calendar \
--with-curl \
--enable-exif \
--enable-ftp \
--with-kerberos \
--with-t1lib \
--with-gettext \
--with-gmp \
--with-ldap-sasl \
--without-pdo-sqlite \
--with-pspell \
--with-readline \
--with-snmp \
--with-iconv \
--with-openssl \
--with-openssl-dir=/usr \
--with-gd=/usr \
--with-jpeg-dir=/usr \
--with-png-dir=/usr \
--with-zlib-dir=/usr \
--with-freetype-dir=/usr \
--with-mysql \
--with-mysql-sock=/var/run/mysql \
--enable-sockets \
--with-mysql=mysqlnd \
--with-mysqli \
--with-mysqli=mysqlnd \
--with-pdo-mysql \
--with-pdo-mysql=mysqlnd \
--enable-mbstring
До сборки apache и php пришлось собрать вот такие пакеты программ:
valgrind-3.9.0.tar.bz2
apr-1.5.0.tar.bz2
apr-util-1.5.3.tar.bz2
xproto-7.0.26.tar.gz
xextproto-7.3.0.tar.gz
xtrans-1.3.4.tar.gz
xcb-proto-1.10.tar.bz2
util-macros-1.19.0.tar.bz2
dmxproto-2.3.1.tar.bz2
inputproto-2.3-1.tar.bz2
kbproto-1.0.6-1.tar.bz2
libXau-1.0.8.tar.bz2
libpthread-stubs-0.1.tar.bz2
libxcb-1.10.tar.bz2
xf86bigfontproto-1.2.0.tar.bz2
xf86dgaproto-2.1.tar.bz2
xf86driproto-2.1.1.tar.bz2
xf86miscproto-0.9.3.tar.bz2
xf86rushproto-1.1.2.tar.bz2
xf86vidmodeproto-2.3.1.tar.bz2
xineramaproto-1.2.1.tar.bz2
libX11-1.6.2.tar.gz
libXpm-3.5.11.tar.bz2
yasm-1.2.0.tar.gz
libvpx-v1.3.0.tar
libgd-2.1.0.tar
t1lib-5.1.2.tar.gz
Без этих пакетов ни apache ни php не собирался.
После установки всего этого, поверил работу apache и php взял работающий сайт написанный на cms с базой данный - mysql. Всё работало отлично, работало с базой данный записывались, выбирались из базы и т. д. Работала капча.
phpinfo в прикреплённом файле phpinfo.mht
Вот файл из которого пытаюсь отправить почту:
CODE (
text):
скопировать код в буфер обмена
<?php
set_error_handler('err_handler');
function err_handler($errno, $errmsg, $filename, $linenum)
{
$date = date('Y-m-d H:i:s (T)');
$f = fopen('errors.txt', 'a');
if (!empty($f))
{
$filename =str_replace($_SERVER['DOCUMENT_ROOT'],'',$filename);
$err = "$errmsg = $filename = $linenum\r\n";
fwrite($f, $err);
fclose($f);
}
}
error_reporting(E_ALL);
ini_set('log_errors', 'On');
ini_set('error_log', '/var/log/httpd/php_errors.log');
ini_set("display_errors", "1");
try
{
if (mail("xxxxx@xxxx.xx", "test111", "test222"))
{
echo "Почта работает.";
}
else
{
echo "Почта не работает.";
}
}
catch (Exception $exc)
{
error_log($exc->getMessage());
}
?>
Для отправки почты использую ssmtp, в конфигах ssmtp всё прописано для отправки почты, почта отправляется из командной строки, из командной строки ssmtp работает отлично.