Uruchamianie skryptów powłoki przez php

Jeśli chcecie uruchamiać skrypty powłoki bezpośrednio ze strony www za pomocą php należy wykonać kilka czynności.

1) Tworzymy w katalogu, do którego ma dostęp php, plik zawierający skrypt do uruchomienia o nazwie skrypt.sh

root@server:/# touch /var/www/naszastrona/skrypt.sh

2) Przypisujemy do pliku Czytaj dalej Uruchamianie skryptów powłoki przez php

PHP różnica między apostrofem i cudzysłowem

Wielu początkujących programistów zastanawia się nad tym, jaka jest różnica między apostrofem, a cudzysłowem w języku PHP.

W większości przypadków polecenia i komendy wykonają się tak samo i nie będzie miało to większego znaczenia. Jednak w specyficznych sytuacjach warto wiedzieć, że napisy ujęte w cudzysłowy podlegają interpretacji przez PHP, natomiast Czytaj dalej PHP różnica między apostrofem i cudzysłowem

Zend Framework – instalacja w Ubuntu 12.04

Chcąc uruchamiać projekty korzystające z Zend’a na naszym serwerze www, bez konieczności kopiowania wszystkich plików framework’a do każdego projektu możemy zainstalować Zend’a na serwerze. W tym Celu z konsoli wpisujemy:

root@server:# apt-get install zend-framework libzend-framework-zendx-php

Po instalacji możemy sprawdzić czy wszystko przebiegło w porządku:

root@server:# zf show version

powinna wyświetlić się wersja Zenda jak poniżej: Czytaj dalej Zend Framework – instalacja w Ubuntu 12.04

PHP 5.3 – instalacja Zend Guard 6.0

Od wersji PHP 5.3 nie jest wspierany Zend Optimizer, w związku z tym chcąc używać zakodowane pliki na serwerze musimy zainstalować Zend Guard. W chwili pisania artykułu była dostępna wersja 5.5.0 i dla tej wersji jest poniższy opis.

W pierwszej kolejności pobieramy Zend Guard wydając z konsoli poniższe polecenie:

root@server: wget http://downloads.zend.com/guard/5.5.0/ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz

potem rozpakowujemy pliki:

root@server: tar xvf ./ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz

przechodzimy do podkatalogu: Czytaj dalej PHP 5.3 – instalacja Zend Guard 6.0

PHP5 curl – instalacja biblioteki

Instalacja biblioteki curl w linuxie:

root@server: apt-get install php5-curl

lub

root@server: apt-get install curl libcurl3 libcurl3-dev php5-curl

na zakończenie:

root@server: service apache2 restart

powinno działać.

Wersja Zend Framework – jak sprawdzić?

Wersję zainstalowanego na serwerze frameworka znajdziemy w pliku Version.php, który najczęściej jest w folderze library/Zend (lub libs/Zend w katalogu, gdzie jest zainstalowany dany serwis www). Jeśli mamy możliwość podglądu pliku odszukujemy poniższą linijkę:

const VERSION = '1.11.11';

w której mamy wersję Zenda.

Jeśli nie mamy możliwości podglądu powyższego pliku, dodajemy do dowolnego pliku php poniższy kod i wyświetlamy go w przeglądarce.

<?php

include("library/Zend/Version.php");
echo Zend_Version::VERSION;

?>

 

Instalacja PEAR-PHP w Ubuntu

Instalacja PEAR-PHP:

root@server:# apt-get install php-pear

Listę wszystkich programów dostępnych bezpośrednio z repozytoriów PEAR można wyświetlić wydając polecenie:

root@server:# pear remote-list

Instalacja pakietu z repozytoriów PEAR:

root@server:# pear install nazwa_pakietu

Instalacja modułów PHP w Ubuntu

Aby dograć dodatkowe moduły do PHP należy zainstalować odpowiednią paczkę z modułem:

root@server:# apt-get install php5-cgi

przykładowa lista modułów:

php5-exactimage – fast image manipulation library (PHP bindings)
php5-ffmpeg – audio and video support via ffmpeg for php5
php5-lasso – Library for Liberty Alliance and SAML protocols – PHP 5 bindings
php5-mapscript – php5-cgi module for MapServer
php5-ming – Ming module for php 5
php5-uuid – OSSP uuid module for php 5
php5-auth-pam – A PHP5 extension for PAM authentication
php5-geoip – GeoIP module for php5
php5-idn – PHP API for the IDNA library
php5-imagick – ImageMagick module for php5
php5-memcache – memcache extension module for PHP 5
php5-memcached – memcached extension module for PHP 5
php5-ps – ps module for PHP 5
php5-radius – PECL radius module for PHP 5
php5-sasl – Cyrus SASL extension for PHP 5
php5-suhosin – advanced protection module for php5
php5-svn – PHP Bindings for the Subversion Revision control system
php5-tokyo-tyrant – PHP interface to Tokyo Cabinet’s network interface, Tokyo Tyrant
php5-cgi – server-side, HTML-embedded scripting language (CGI binary)
php5-curl – CURL module for php5
php5-dbg – Debug symbols for PHP5
php5-dev – Files for PHP5 module development
php5-enchant – Enchant module for php5
php5-gmp – GMP module for php5
php5-imap – IMAP module for php5
php5-interbase – interbase/firebird module for php5
php5-intl – internationalisation module for php5
php5-ldap – LDAP module for php5
php5-mcrypt – MCrypt module for php5
php5-odbc – ODBC module for php5
php5-pgsql – PostgreSQL module for php5
php5-pspell – pspell module for php5
php5-recode – recode module for php5
php5-snmp – SNMP module for php5
php5-sqlite – SQLite module for php5
php5-sybase – Sybase / MS SQL Server module for php5
php5-tidy – tidy module for php5
php5-xmlrpc – XML-RPC module for php5
php5-xsl – XSL module for php5
php5-librdf – PHP5 language bindings for the Redland RDF library
php5-remctl – PECL module for Kerberos-authenticated command execution
php5-xcache – Fast, stable PHP opcode cacher
php5-xdebug – Xdebug Module for PHP 5
php5-adodb – Rozszerzenie optymalizujące bibliotekę abstrakcji bazy ADOdb
php5-cli – Interpreter wiersza poleceń języka skryptowego php5
php5-common – Pliki wspólne pakietów zbudowanych ze źródeł php5
php5-gd – Moduł GD do php5
php5-mysql – Moduł MySQL do PHP5

Następnie w /etc/php5/cgi/php.ini odkomentować linie z określonym modułem np.

extension=mysql.so

Instalacja PHP APC cache w Ubuntu

Mechanizm PHP APC cache polega na buforowaniu skomplikowanego kodu PHP w pamięci operacyjnej lub na dysku serwera. Przy kolejnym zapytaniu o ten sam kod, APC sprawdza czy ma go w pamięci, jeśli tak PHP nie wykonuje ponownie kodu tylko jest on ładowany z pamięci.

Instalacji PHP APC cache w Ubuntu jest banalnie prosta i polega na wydaniu poniższego polecenia z konsoli:

root@server:# apt-get install php-apc

Alternatywnym sposobem instalacji jest wydanie poniższych poleceń z konsoli:

root@server:# apt-get install php-pear
root@server:# apt-get install php5-dev 
root@server:# apt-get install apache2-dev
root@server:# pecl install apc
root@server:# echo "extension=apc.so" &gt; /etc/php5/apache2/conf.d /apc.ini
W obu przypadkach, po instalacji oczywiście musimy zrestartować serwer www poniższym poleceniem:
root@server:# /etc/init.d/apache2 restart