Показаны сообщения с ярлыком php. Показать все сообщения
Показаны сообщения с ярлыком php. Показать все сообщения

суббота, 13 сентября 2008 г.

Инсталляция Xdebug и APC под openSUSE 11.0

Дома я работаю на стареньком ноутбуке Benq R22E, использующий OpenSUSE 11.0 в качестве операционной системы. К сожалению, OpenSUSE не предоставяет возможность поставить ни Xdebug (PHP расширение для отладки приложений), ни APC (PHP расширение для кеширования приложений). Тем не менее, это легко можно поправить.

Для этого надо только подключить дополнительный репозиторий с PHP расширениями для OpenSUSE (http://download.opensuse.org/repositories/server:/php:/extensions/), из которого мы можем загрузить и установить на компьютер Xdebug и APC. Можно использовать YaST, если предпочитаете GUI, или zipper, в случае предпочтения коммандной строки:
$ zypper ar http://download.opensuse.org/repositories/server:/php:/extensions/openSUSE_11.0/ PHP5Extensions
$ zypper in php5-xdebug
$ zypper in php5-APC
Файл конфигурации Xdebug находится по адресу /etc/php5/conf.d/xdebug.ini

Все просто, не так ли?
Примечание. Оригинал-источник здесь

Установка Netbeans в Linux

В связи с тем, что у Netbeans IDE появиласть полноценная поддержка PHP, то решил установить ее себе на компьютер как возможную замену Eclipse PDT.
Кто не знает что это такое - читать здесь.

Установка Sun Java JDK

Установка в Ubuntu:
$ sudo apt-get install sun-java6-jdk

Установка в Fedora:
$ sudo yum -y install java-1.6.0-openjdk java-1.6.0-openjdk-devel

Установка в OpenSUSE

Пакет с OpenJDK, хранящийся в репозиториях OpenSUSE не подходит для работы с Netbeans, поэтому скачиваем необходимый для инсталляции пакет jdk-6u7-linux-i586-rpm.bin с сайта Sun Java http://java.sun.com/javase/downloads/. Далее устанавливаем его под root-ом в консоли
$ chmod +x jdk-6u7-linux-i586-rpm.bin
$ su
# mkdir /user/local/src/jdk
# mv jdk-6u7-linux-i586-rpm.bin /usr/local/src/jdk
# cd /usr/local/src/jdk
# ./jdk-6u7-linux-i586-rpm.bin
# exit


Установка Netbeans

Выбираем необходимую версию Netbeans http://download.netbeans.org/netbeans/6.1/final/ и скачиваем ее себе на компьютер. Для себя выбираю вариант "Early access to PHP" файл netbeans-6.1-ea-php-linux.sh
Запускаем инсталятор с консоли
$ sh netbeans-6.1-ea-php-linux.sh 

В открывшемся инсталляционном окне соглашаемся со всеми предложенными вопросами. Все. По окончании инсталяции остается проверить наличие ярлыка на десктопе Gnome, а также вызов IDE из системного меню

пятница, 30 ноября 2007 г.

Инсталяция Eplipse PDT в Debian Etch

Инсталяция Eclipse

Чтобы не возиться с настройками Eclipse восплользуемся сайтом разработчиков php компании Zend и загрузим с него архив "все-в-одном" (all-in-one). После загрузки архива распакуем его в каталог /opt/eclipse. Для вызова IDE достаточно просто добавить соответствующую строку в системное меню с помощью редактора меню.
Примечание. В случае "явных тормозов" при работе Eclipse можно попробовать увеличить размер памяти выделяемый по умолчанию - параметр -Xmx256m на -Xmx512m в файле /opt/eclipse/eclipse.ini

Отладка php скриптов

Если с отладкой консольных скриптов работает по умолчанию, то для отладки серверных скриптов необходимо подключить Zend Debugger к php модулю Apache. Откроем консоль для root.
# cp /opt/eclipse/plugins/org.zend.php.debug.debugger.linux.x86_5.2.10.v20070905/resources/php5/ZendDebugger.so /usr/lib/php5/20060613/
gedit /etc/php5/apache2/conf.d/zend-debug.ini
в окне редактора прописываем следующие строки:
# configuration for php ZendDebugger module
; Zend Debugger madness
zend_extension= /usr/lib/php5/20060613/ZendDebugger.so
zend_debugger.allow_hosts=127.0.0.1
zend_debugger.expose_remotely=always
zend_debugger.connector_port = 10000
; Zend Debugger madness end
перезапустим демон Apache
/etc/init.d/apache2 restart
проверим вызвав на сервере страницу содержащую phpinfo() и найдем соответсвующую секцию в отчете.
Zend Debugger
Passive Mode Timeout 20 seconds
Connector PID 5321

Directive Local Value Master Value
zend_debugger.allow_hosts 127.0.0.1 127.0.0.1
zend_debugger.allow_tunnel no value no value
zend_debugger.connect_password no value no value
zend_debugger.deny_hosts no value no value
zend_debugger.expose_remotely always always
zend_debugger.httpd_uid -1 -1
zend_debugger.max_msg_size 2097152 2097152
zend_debugger.tunnel_max_port 65535 65535
zend_debugger.tunnel_min_port 1024 1024
Все. Дебаггер установле, остается только указать Eclipse что для конкретного php проекта мы будем использовать Zend Debugger. Для этого запустим Eclipse и в нем откроем окно настроке - меню Window - Preferences, а в ней откорректируем параметры "PHP Debug".

При настройке дебаггера использовалась эта статья: Almost too good to be true: Debugging PHP with Eclipse PHP IDE and Zend Debugger on Mac OS X

среда, 27 июня 2007 г.

Инсталяция Lighttpd и PHP-5.2

Инсталяция PHP-5.2
  1. Скачать с www.php.net последнюю версию php, разархиваровать пакет и перенести его к каталог /usr/local/src для последующего использования:
    wget http://lv.php.net/get/php-5.2.2.tar.gz/from/this/mirror
    tar -xvzf php-5.2.2.tar.gz
    sudo mv php-5.2.2 /usr/local/src/
    cd /usr/local/src/php-5.2.2/
  2. Инсталировать пакеты необходимые для компиляции:
    apt-get install build-essential, flex, m4 \
    libxml2-dev, libssl-dev, libbz2-dev, libjpeg62-dev, libpng12-dev \
    libmysqlclient15-dev, libcurl3-openssl-dev, libqdbm-dev \
    libgdbm-dev
  3. Задать список рабочих библиотек для php для компиляции. Для дальнейших эксперементов можно даже сохранить его как скрипт /usr/local/src/php-5.2.2/go
    #! /bin/sh
    #
    # Created by configure

    CFLAGS='-march=i686' \
    CXX='gcc' \
    './configure' \
    './configure' \
    '--prefix=/usr/local/php5-fcgi' \
    '--sysconfdir=/etc/php5-fcgi' \
    '--with-layout=PHP' \
    '--with-ttf' \
    '--with-expat-dir=/usr' \
    '--enable-mbstring' \
    '--enable-mailparse' \
    '--with-config-file-scan-dir=/etc/php5-fcgi' \
    '--enable-bcmath' \
    '--enable-calendar' \
    '--enable-ftp' \
    '--enable-gd-native-ttf' \
    '--enable-magic-quotes' \
    '--enable-posix' \
    '--enable-session' \
    '--enable-shmop' \
    '--enable-sysvsem' \
    '--enable-sysvshm' \
    '--enable-track-vars' \
    '--enable-trans-sid' \
    '--enable-sockets' \
    '--enable-xml' \
    '--with-bz2' \
    '--with-curl' \
    '--with-mime-magic' \
    '--with-mysqli=/usr/bin/mysql_config' \
    '--enable-dba' \
    '--with-inifile' \
    '--with-flatfile' \
    '--with-gdbm' \
    '--with-freetype-dir=/usr' \
    '--with-gd' \
    '--enable-exif' \
    '--with-jpeg-dir=/usr' \
    '--with-mysql=/usr/local/mysql' \
    '--enable-memcache' \
    '--with-mysql-sock=var/run/mysqld/mysqld.sock' \
    '--with-openssl' \
    '--with-gettext' \
    '--with-dom' \
    '--with-dom-xslt' \
    '--with-png-dir=/usr' \
    '--with-regex=php' \
    '--with-zlib' \
    '--enable-fastcgi' \
    '--enable-memory-limit' \
    '--enable-discard-path' \
    '--enable-force-cgi-redirect' \
    "$@"
  4. Все, можно компилировать. Ввести в консоли следущее:
    chmod a+x go
    ./go
    make
    make install
    make test
    sudo make install
  5. Если компиляция закончилась нормально, следующий шаг создание php.ini
    sudo cp /usr/local/src/php-5.2.2/php.ini-recommended /etc/php5-fcgi/php.ini
    sudo gedit /etc/php5-fcgi/php.ini

    В окне редактора находим и правим следующие строки:
    - - - - - -
    [Date]
    ; Defines the default timezone used by the date functions
    date.timezone = Europe/Riga
    - - - - - -
    short_open_tag = On
    error_reporting = E_ALL | E_STRICT
    display_errors = On
    register_argc_argv = On
    - - - - - -
    ; Magic quotes for incoming GET/POST/Cookie data.
    magic_quotes_gpc = Off
    - - - - - -
  6. Сделать символьный линк, чтобы система могла наити команду php на привычном месте
    sudo ln -s /usr/local/php5-fcgi/bin/php /usr/local/bin/php

  7. Тест работы; перейти в домашний каталог, открытить консоль и вызвать php. Результат должен быть вроде следующего
    noe@noe$ php -v
    PHP 5.2.2 (cgi-fcgi) (built: June 26 2007 23:14:22)
    Copyright (c) 1997-2007 The PHP Group
    Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies

Инсталяция Lighttpd
  1. Тут все много проще. Поставить стандартный пакет через синаптик или с консоли. Затем активизировать модуль fastcgi, если необходими, подправить путь к php
    cd /etc/lighttpd/conf-enabled/
    sudo ln -s /etc/lighttpd/conf-available/10-fastcgi.conf
    sudo gedit /etc/lighttpd/conf-enabled/10-fastcgi.conf

  2. Теперь внести изменения и прописать все хосты в конфигурационный файл.
    sudo gedit /etc/lighttpd/lighttpd.conf

  3. Кроме того, переписать владельцем сервера пользозователя nobody из nogroup
    ## change uid to  (default: don't care)
    #server.username = "www-data"
    server.username = "nobody"

    ## change uid to (default: don't care)
    #server.groupname = "www-data"
    server.groupname = "nogroup"

  4. Аналогично для логов сервера
    sudo chown nobody:nogroup -R /var/log/lighttpd