APC

A HupWiki-ből...

Tartalomjegyzék

Bemutatás

Alapjában véve ez a cikk az APC (Alternative Php Cache) integrálásáról fog szólni, apache2 és php alá.

Forrásból

Ha forrásból raknánk fel az apachet és phpt akkor kezdeti lépések:

Apache fordítása

Ez igy apache modulként fog működni, persze a phpt lehet cgiként is telepíteni.

http://hu.php.net/manual/en/security.cgi-bin.php

Mindenekelőtt nézzük meg a Changelogot, Readmet hátha valamin változtattak, és utaná nézzük meg a configure script helpjét is.

 $./configure --help
Első lépés :
   $./configure --prefix=/opt/apache<verzioszam> --enable-modules=all
   $./make
   $./make install
Masodik lépes :

Rakjuk fel a libgdt es mysqlt libjpeg es satöbbi amire szüksége lesz a phpnak.

   $./configure --with-apxs2=/opt/apache2.2.6/bin/apxs --with-mysql=/usr/bin/ 
   --with-gd=/opt/libgd/ --prefix=/opt/php<verzioszam> --enable-gd-native-ttf --enable-sockets 
   --enable-zip --enable-ftp --with-png-dir=/usr/lib --with-jpeg-dir --with-freetype-dir=/usr/lib  
   --with-openssl --with-zlib --with-ttf --with-mcrypt 
   --with-pcre-dir --with-iconv-dir
 $./make
 $./make install

Bemásolod a php.ini-dist et a prefixben megadott /lib könyvátrba. Majd beállítod a httpd.confban a modult ha nem lenne benne,

      LoadModule php5_module        modules/libphp5.so

és beállítod hogy melyik fileokat értelmezze a php parser.

   AddType application/x-httpd-php .php .phtml .html
   AddType application/x-httpd-php-source .phps

Ezen kívül még persze nagyon sok mindent be lehet állítani de majd egy másik cikkben.

Harmadik lépés:

Mivel egy php kiterjesztésről van szó több féleképpen is fel lehet rakni, jelen esetben most a phpize-t hasznaljuk.

    $ cd extname
    $ phpize
    $ ./configure
    $ make
    $ make install

Ha minden igaz akkor most készült egy extname.so amit bele kell raknod a php kiterjesztések könyvtárba. http://hu.php.net/manual/en/ini.core.php#ini.extension-dir

Ezután a php.ini ben be kell állítanod a kiterjesztést.

      extension=extname.so

Negyedik lépés:

Ha eddig minden jól ment mostmár csak az APC t kell beállítanunk. Csak hozzáadjuk a php.ini hez az alábbi sorokat :

   extension=apc.so
   apc.enabled=1
   apc.shm_size=30

További info: http://hu.php.net/manual/en/apc.configuration.php

Ötödik lépés

Ha minden jól ment mostmár indíthatjuk az apachet, és nézzük meg a phpinfo(); -t és keressük meg benne az APC-t, ha nem találod, akkor bizony valamit rosszul csináltál.

Debianosan

Rakjuk fel az apt csomagkezelővel a phpt,mysqlt, és apache2-t. Ha ez megvan akkor jöhet a többi lépés:

       apt-get install php-pear
       apt-get install php5-dev apache2-prefork-dev build-essential 
       pecl install apc
      downloading APC-3.0.17.tgz ...
      Starting to download APC-3.0.17.tgz (116,058 bytes)
      .........................done: 116,058 bytes
      47 source files, building
      running: phpize
      Configuring for:
      PHP Api Version:         20041225
      Zend Module Api No:      20060613
      Zend Extension Api No:   220060519
      Use apxs to set compile flags (if using APC with Apache)? [yes]  -> Igen yes

Ha elkészült valami hasonlót kell kiírnia :

    Build process completed successfully
    Installing '/var/tmp/pear-build-root/install-APC-3.0.17//usr/lib/php5/20060613+lfs/apc.so'
    install ok: channel://pecl.php.net/APC-3.0.17
    You should add "extension=apc.so" to php.ini

Ezután beállítjuk az apct a /etc/php5/conf.d/apc.ini fileban, ha nincs akkor hozzuk létre.

   extension=apc.so
   apc.enabled=1
   apc.shm_size=30
  

Ha megvagyunk nincs más teendőnk mint : /etc/init.d/apache2 restart

És nézzük ismételten a phpinfo(); -t.

Linkek

APC

PHP

APACHE