PHP 5.2 (через fastcgi) и PHP 5.4 (как модуль Apache2)
Re: PHP 5.2 (через fastcgi) и PHP 5.4 (как модуль Apache2)
На CentOS сможете выбирать при установке два варианта. Либо php 5.3 либо php 5.4
Никаких проблем не должно быть
Никаких проблем не должно быть
Re: PHP 5.2 (через fastcgi) и PHP 5.4 (как модуль Apache2)
в Debian 7
.....
Устанавливаем PHP версию 5.2.17
Создаем папки, где будем собирать и куда устанавливать, скачиваем, разархивируем и переходим в разархивированную папку с дистрибутивом PHP 5.2.17, для этого выполняем команды:
Скачиваем и накладываем патчи безопасности на исходные коды php 5.2.17 выполнив команды:
Запускаем команду для конфигурирования PHP 5.2 в Debian Wheezy c архитектурой amd64
После конфигурирования запускаем сборку и установку PHP языка версии 5.2.17 выполнив команды:
Ошибок нет
Создаем конфигурационный файл php.ini файл для версии php 5.2.17 выполнив команду:
Проверяем версию установленного PHP интерпритатора выполнив команду:
-------
Добавление в apache2 поддержки fastcgi:
sudo service apache2 restart
-------------------------------------
nano /usr/local/vesta/data/templates/web/apache2/phpfcgi5_2.tpl
nano /usr/local/vesta/data/templates/web/apache2/phpfcgi5_2.stpl
nano /usr/local/vesta/data/templates/web/apache2/phpfcgi5_2.sh
В панели Vesta шаблон phpfcgi5_2
и перезапускаю сервер и ошибка
В чем ошибка
.....
Устанавливаем PHP версию 5.2.17
Создаем папки, где будем собирать и куда устанавливать, скачиваем, разархивируем и переходим в разархивированную папку с дистрибутивом PHP 5.2.17, для этого выполняем команды:
Code: Select all
mkdir /opt/php-5.2.17
mkdir -p /usr/src/iserver/ && cd /usr/src/iserver/
wget -c -t0 http://softnastroy.com/downloads/php5/php-5.2.17.tar.bz2
tar jxf php-5.2*tar.bz2
cd /usr/src/iserver/php-5.2.17/
Code: Select all
wget http://php52-backports.googlecode.com/files/php52-backports-20130717.patch
patch -p1 < php52-backports-20130717.patch
#
wget http://softnastroy.com/downloads/debian_patches_disable_SSLv2_for_openssl_1_0_0.patch.patch.txt
patch -p1 < debian_patches_disable_SSLv2_for_openssl_1_0_0.patch.patch.txt
Code: Select all
./configure \
--prefix=/opt/php-5.2.17 \
--with-config-file-path=/opt/php-5.2.17 \
--with-pdo-pgsql \
--with-zlib-dir \
--with-freetype-dir \
--enable-mbstring \
--with-libxml-dir=/usr \
--enable-soap \
--enable-calendar \
--with-curl=/usr/bin \
--with-mcrypt \
--with-zlib \
--with-gd \
--with-pgsql \
--disable-rpath \
--enable-inline-optimization \
--with-bz2 \
--with-zlib \
--enable-sockets \
--enable-sysvsem \
--enable-sysvshm \
--enable-pcntl \
--enable-mbregex \
--with-mhash \
--enable-zip \
--with-pcre-regex \
--with-mysql \
--with-mysql-sock=/var/run/mysqld/mysqld.sock \
--with-pdo-mysql \
--with-mysqli \
--with-jpeg-dir=/usr/lib/x86_64-linux-gnu \
--with-png-dir=/usr \
--enable-gd-native-ttf \
--with-openssl \
--enable-ftp \
--with-imap \
--with-imap-ssl \
--with-kerberos \
--with-gettext \
--enable-cli \
--enable-fastcgi \
--enable-discard-path \
--enable-force-cgi-redirect \
--enable-cgi \
--enable-bcmath
Code: Select all
make
make install
Создаем конфигурационный файл php.ini файл для версии php 5.2.17 выполнив команду:
Code: Select all
cp /usr/src/iserver/php-5.2.17/php.ini-recommended /opt/php-5.2.17/lib/php.ini
Code: Select all
/opt/php-5.2.17/bin/php -v
ответ системы:
PHP 5.2.17 (cli) (built: Mar 20 2013 10:32:00)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies
Добавление в apache2 поддержки fastcgi:
Code: Select all
sudo aptitude install apache2-suexec libapache2-mod-fcgid
Включаем нужные модули Apache2 и перегружаем его:
sudo a2enmod cgi fcgid actions
-------------------------------------
nano /usr/local/vesta/data/templates/web/apache2/phpfcgi5_2.tpl
Code: Select all
<VirtualHost %ip%:%web_port%>
ServerName %domain_idn%
%alias_string%
ServerAdmin %email%
DocumentRoot %docroot%
ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/
Alias /vstats/ %home%/%user%/web/%domain%/stats/
Alias /error/ %home%/%user%/web/%domain%/document_errors/
SuexecUserGroup %user% %group%
CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes
CustomLog /var/log/%web_system%/domains/%domain%.log combined
ErrorLog /var/log/%web_system%/domains/%domain%.error.log
<Directory %docroot%>
AllowOverride All
Options +Includes -Indexes +ExecCGI
<Files *.php>
SetHandler fcgid-script
</Files>
FCGIWrapper %home%/%user%/web/%domain%/cgi-bin/fcgi-starter .php
</Directory>
<Directory %home%/%user%/web/%domain%/stats>
AllowOverride All
</Directory>
IncludeOptional %home%/%user%/conf/web/%web_system%.%domain%.conf*
</VirtualHost>
Code: Select all
<VirtualHost %ip%:%web_ssl_port%>
ServerName %domain_idn%
%alias_string%
ServerAdmin %email%
DocumentRoot %sdocroot%
ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/
Alias /vstats/ %home%/%user%/web/%domain%/stats/
Alias /error/ %home%/%user%/web/%domain%/document_errors/
SuexecUserGroup %user% %group%
CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes
CustomLog /var/log/%web_system%/domains/%domain%.log combined
ErrorLog /var/log/%web_system%/domains/%domain%.error.log
<Directory %sdocroot%>
SSLRequireSSL
AllowOverride All
Options +Includes -Indexes +ExecCGI
<Files *.php>
SetHandler fcgid-script
</Files>
FCGIWrapper %home%/%user%/web/%domain%/cgi-bin/fcgi-starter .php
</Directory>
<Directory %home%/%user%/web/%domain%/stats>
AllowOverride All
</Directory>
php_admin_value open_basedir none
SSLEngine on
SSLVerifyClient none
SSLCertificateFile %ssl_crt%
SSLCertificateKeyFile %ssl_key%
%ssl_ca_str%SSLCertificateChainFile %ssl_ca%
IncludeOptional %home%/%user%/conf/web/s%web_system%.%domain%.conf*
</VirtualHost>
Code: Select all
#!/bin/bash
# Adding php wrapper
user="$1"
domain="$2"
ip="$3"
home_dir="$4"
docroot="$5"
wrapper_script="#!/bin/sh
PHPRC=/opt/php-5.2.17/lib/
export PHPRC
export PHP_FCGI_MAX_REQUESTS=1000
export PHP_FCGI_CHILDREN=20
exec /opt/php-5.2.17/bin/php-cgi
"
wrapper_file="$home_dir/$user/web/$domain/cgi-bin/fcgi-starter"
echo "$wrapper_script" > $wrapper_file
chown $user:$user $wrapper_file
chmod -f 751 $wrapper_file
exit 0
и перезапускаю сервер и ошибка
Code: Select all
Syntax error on line 25 of /home/123/conf/web/apache2.conf:
Invalid command 'IncludeOptional', perhaps misspelled or defined by a module not included in the server configuration
Action 'configtest' failed.
The Apache error log may have more information.
Re: PHP 5.2 (через fastcgi) и PHP 5.4 (как модуль Apache2)
Кто то сделал по этой методике php 5.2 себе?
Re: PHP 5.2 (через fastcgi) и PHP 5.4 (как модуль Apache2)
А зачем вам такой раритет?aniqi wrote:Кто то сделал по этой методике php 5.2 себе?
Re: PHP 5.2 (через fastcgi) и PHP 5.4 (как модуль Apache2)
нужно для старых сайтов, буду постепенно их переводить на 5.5imperio wrote:А зачем вам такой раритет?aniqi wrote:Кто то сделал по этой методике php 5.2 себе?
я установил php - в командной строке тест идет
делал по инструкции из этой статьи
http://www.xyberry.com/customer-area/kn ... icle&id=85
ну и из этой темы
все шаблоны прописались, но при попытке выбрать шаблон домена phpfcgi5_2 - апач валится
мол не может его рестартануть и запустить веста, шаблон default работает норм
что делать? почему так
-
- Support team
- Posts: 1047
- Joined: Fri Mar 21, 2014 7:49 am
- Contact:
- Os: CentOS 6x
- Web: apache + nginx
Re: PHP 5.2 (через fastcgi) и PHP 5.4 (как модуль Apache2)
а что пишет в логах?
Re: PHP 5.2 (через fastcgi) и PHP 5.4 (как модуль Apache2)
а где логи посмотреть? хотя нашел, и че ему надо?Alex Connor wrote:а что пишет в логах?
Code: Select all
[Fri Oct 02 02:24:07.631579 2015] [core:notice] [pid 12392] AH00094: Command line: '/usr/sbin/apache2'
[Fri Oct 02 02:43:05.335112 2015] [mpm_prefork:notice] [pid 12392] AH00169: caught SIGTERM, shutting down
[Fri Oct 02 02:44:52.094804 2015] [suexec:notice] [pid 13858] AH01232: suEXEC mechanism enabled (wrapper: $
[Fri Oct 02 02:44:52.158868 2015] [:notice] [pid 13859] mod_ruid2/0.9.8 enabled
[Fri Oct 02 02:44:52.161951 2015] [mpm_prefork:notice] [pid 13859] AH00163: Apache/2.4.7 (Ubuntu) mod_fcgi$
[Fri Oct 02 02:44:52.161996 2015] [core:notice] [pid 13859] AH00094: Command line: '/usr/sbin/apache2'
[Fri Oct 02 02:48:42.817707 2015] [mpm_prefork:notice] [pid 13859] AH00169: caught SIGTERM, shutting down
[Fri Oct 02 02:49:33.893482 2015] [suexec:notice] [pid 14557] AH01232: suEXEC mechanism enabled (wrapper: $
[Fri Oct 02 02:49:33.956366 2015] [:notice] [pid 14558] mod_ruid2/0.9.8 enabled
[Fri Oct 02 02:49:33.959326 2015] [mpm_prefork:notice] [pid 14558] AH00163: Apache/2.4.7 (Ubuntu) mod_fcgi$
[Fri Oct 02 02:49:33.959357 2015] [core:notice] [pid 14558] AH00094: Command line: '/usr/sbin/apache2'
и еще вопрос, почему шаблоны ложат в разные папки люди?
то указано положите сюда,
Code: Select all
/usr/local/vesta/data/templates/web/httpd/phpfcgid_52.stpl
до сюда
Code: Select all
/usr/local/vesta/data/templates/web/apache2/phpfcgid_52.stpl
почему у одних папка httpd у других apache2 ??
у меня лично все лежало в apache2
и еще можете рассказать зачем в шаблоне делаем файл *.sh
в папке я аналогичных не нашел, я так понял он исполняется при создании домена?
Re: PHP 5.2 (через fastcgi) и PHP 5.4 (как модуль Apache2)
CentOS - httpdпочему у одних папка httpd у других apache2 ??
Debian/Ubuntu -apache2
Re: PHP 5.2 (через fastcgi) и PHP 5.4 (как модуль Apache2)
точно, уже нашел ответ на свой вопрос)imperio wrote:CentOS - httpdпочему у одних папка httpd у других apache2 ??
Debian/Ubuntu -apache2
а что можете по ошибкам сказать, че ему нехватает
Re: PHP 5.2 (через fastcgi) и PHP 5.4 (как модуль Apache2)
Хотя еще добавлю, апач не рестартует и веста шлет на почту вот такое сообщение
Code: Select all
Usage: apache2 {start|stop|graceful-stop|restart|reload|force-reload|start-htcacheclean|stop-htcacheclean}
* Restarting web server apache2
...fail!
* The apache2 configtest failed.
Output of config test was:
apache2: Syntax error on line 83 of /etc/apache2/apache2.conf: Syntax error on line 3 of /etc/apache2/conf.d/vesta.conf: Syntax error on line 26 of /home/user/conf/web/apache2.conf: No matches for the wildcard 'apache2.v2.gid29.ru.conf*' in '/home/user/conf/web', failing (use IncludeOptional if required)
Action 'configtest' failed.
The Apache error log may have more information.