суббота, 9 февраля 2013 г.

настройка php.ini freebsd

Просмотров: 2360 автор: 24 декабря 2009

Другие новости по теме:

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо зайти на сайт под своим именем.

Ключевые теги: , , , , , , , , , , , ,

Q. Как я могу настроить PHP FastCGI качестве веб-сервера под FreeBSD Nginx?А. Вы можете легко настроить PHP как FastCGI приложение под Nginx для исполнения. Вам необходимы следующие компоненты:[A] Spawn-FCGI binary - для порождения FastCGI процесса. Этот бинарник может быть установлен с проекта Lighttpd веб-сервера. Nginx автоматически не порождает FCGI процессы. Вы должны начать их отдельно, используя spawn-fcgi. start.php.sh: сценарий оболочки для остановки / запуска / перезапуска процесса PHP FastCGI. Это PHP скрипт подкачки процесса на IP 127.0.0.1 и 9000 порту. После запуска бэкэнда Nginx можно настроить для подключения к PHP.[b]Установка PHP5 на FreeBSD.Если php5 не установлена, введите следующие команды (не забудьте выбрать опцию FastCGI):# cd /usr/ports/lang/php5# make config# make install clean Рис.01 Включите поддержку FastCGI, выбрав опцию FastCGIКроме того, установите необходимые PHP расширения, такие как PHP-msyql, PHP-GD и так далее:# cp /usr/local/etc/php.ini-recommended /usr/local/etc/php.ini# cd /usr/ports/lang/php5-extensions/# make install cleanУстановка spawn-fcgiПолученный последний Spawn-FCGI из иной Lighttpd установки или установите его следующим образом:# pkg_add -r -v lighttpdПример вывода:scheme:   [ftp]user:     []password: []host:     [ftp.freebsd.org]port:     [0]document: [/pub/FreeBSD/ports/amd64/packages-7.0-release/Latest/lighttpd.tbz]---> ftp.freebsd.org:21looking up ftp.freebsd.orgconnecting to ftp.freebsd.org:21<<< 220 Welcome to freebsd.isc.org.>>> USER anonymous<<< 331 Please specify the password...........x lib/lighttpd/mod_access.sox lib/lighttpd/mod_accesslog.ax lib/lighttpd/mod_accesslog.lax lib/lighttpd/mod_accesslog.sox lib/lighttpd/mod_alias.ax lib/lighttpd/mod_alias.lax lib/lighttpd/mod_alias.sox lib/lighttpd/mod_auth.ax lib/lighttpd/mod_auth.la.......Теперь вы можете использовать /usr/local/bin/spawn-fcgi для замены процесса. Если хотите, то вы можете скопировать /usr/local/bin/spawn-fcgi в /root или другой каталог и просто удалить lighttpd пакет, введя следующие команды:# cp /usr/local/bin/spawn-fcgi /root/# pkg_delete -v lighttpd-1.4.18_1# cp /root/spawn-fcgi /usr/local/bin/spawn-fcgiТеперь вы можете запустить PHP Fastcgi из командной строки следующим образом:# /usr/local/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u www -g www -f /usr/local/bin/php-cgiГде,-127.0.0.1: PHP FastCGI привязан IP адрес, по которому будут подключаться Nginx.P-9000: PHP FastCGI номер порта, к которому будет подключаться Nginx.-У WWW: PHP FastCGI имя пользователя.-G WWW: PHP FastCGI имя группы.-F / USR / местное / BIN / PHP-CGI: путь к бинарному PHP5 FastCGI.Убедитесь в том, что php, запущен как PHP FastCGI, введите:# sockstat -4 | grep 9000Пример вывода:www      php-cgi    8998  0  tcp4   127.0.0.1:9000    *:*www      php-cgi    8997  0  tcp4   127.0.0.1:9000    *:*www      php-cgi    8996  0  tcp4   127.0.0.1:9000    *:*www      php-cgi    8995  0  tcp4   127.0.0.1:9000    *:*www      php-cgi    8994  0  tcp4   127.0.0.1:9000    *:*www      php-cgi    8993  0  tcp4   127.0.0.1:9000    *:*Пример скрипта, для Запуска/Остановки PHP FastCGI процесса#!/bin/sh# NGINX FastCGI php5 startup shell script# Feedback <vivek@nixcraft.com># http://bash.cyberciti.biz/web-server/fastcgi-php-server-start-stop-script/# Set ME #PROVIDES=php-cgiLIGHTTPD_FCGI=/usr/local/bin/spawn-fcgiSERVER_IP=127.0.0.1SERVER_PORT=9000SERVER_USER=wwwSERVER_GROUP=wwwPHP_CGI=/usr/local/bin/php-cgiPGREP=/bin/pgrepKILLALL=/usr/bin/killall### No editing below ####cmd=$1 pcgi_start(){      echo "Starting $PROVIDES..."    P$LIGHTTPD_FCGI -a $SERVER_IP -p $SERVER_PORT -u $SERVER_USER -g $SERVER_GROUP -f $PHP_CGI} pcgi_stop(){    echo "Killing $PROVIDES..."    $KILLALL $PROVIDES} pcgi_restart(){    pcgi_stop    pcgi_start} pcgi_status(){        $PGREP $PROVIDES > /dev/null    [ $? -eq 0  ] && echo "$PROVIDES running" || echo "$PROVIDES NOT running" } pcgi_help(){      echo "Usage: $0 {start|stop|restart|status}"} case ${cmd} in[Ss][Tt][Aa][Rr][Tt]) pcgi_start;;[Ss][Tt][Oo][Pp]) pcgi_stop;;[Rr][Ee][Ss][Tt][Aa][Rr][Tt]) pcgi_restart;;[Ss][Tt][Aa][Tt][Uu][Ss]) pcgi_status;;*)      pcgi_help;;esacУстановка вышесказанного shell скрипта:# cd /tmp# fetch http://bash.cyberciti.biz/dl/251.sh.zip# unzip 251.sh.zip# mv 251.sh /usr/local/etc/rc.d/php.cgi.sh# chmod +x /usr/local/etc/rc.d/php.cgi.sh# rm 251.sh.zipЧтобы запустить php FastCGI, введите:# /usr/local/etc/rc.d/php.cgi.sh start# sockstat -4 | lessЧтобы остановить php FastCGI, введите:# /usr/local/etc/rc.d/php.cgi.sh stopПодключение Nginx-вебсервера к PHP FastCGI процессуОткройте ваш nginx.conf файл, и введите:# vi /usr/local/etc/nginx/nginx.confДобавте следующий конфиг директив, так чтобы Nginx мог пройти PHP скрипты через FastCGI сервер на 127.0.0.1:9000:location ~ \.php$ {            fastcgi_pass   127.0.0.1:9000;            fastcgi_index  index.php;            fastcgi_param  SCRIPT_FILENAME  /websites/example.com/http$fastcgi_script_name;            include        fastcgi_params;Если ваш сайт размещен в /home/www/theos.in/http, ваш конфигурационный файл должен выглядеть следующим образом:server {    listen  80;        server_name  theos.in www.theos.in;         access_log  /var/log/nginx/theos.in/access.log  main;         location / {            root   /home/www/theos.in/http;            index  index.php index.html index.htm;        }         error_page   500 502 503 504  /50x.html;        location = /50x.html {            root   /usr/local/www/nginx-dist;        }        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000        location ~ \.php$ {            fastcgi_pass   127.0.0.1:9000;            fastcgi_index  index.php;            fastcgi_param  SCRIPT_FILENAME  /home/www/theos.in/http$fastcgi_script_name;            include        fastcgi_params;        }         location ~ /\.ht {            deny  all;        }}Перезагрузка Nginx веб сервера# nginx -c /usr/local/etc/nginx/nginx.conf -t# /usr/local/etc/rc.d/nginx restartПроверьте PHP со следующими примером скрипта:<?php  phpinfo();?>

→ FreeBSD: Nginx PHP FastCGI Конфигурация

Загрузка. Пожалуйста, подождите...

FreeBSD: Nginx PHP FastCGI Конфигурация » Linux & FreeBSD

Комментариев нет:

Отправить комментарий