db.dobo.sk

Apache + PHP + MySQL kompilácia na Fedore 13/14/15

1 komentár

  • žiadny LAMP/XAMP, custom inštalácia na Fedoru 14, 15
  • MySQL 5, Apache 2.2, PHP 5.3
  • MySQL cez RPM balíky, Apache a PHP skompilované
  • obecne najprv MySQL, pretože PHP sa bude kompilovať s podporou MySQL a je treba vedieť, kde sa databázový stroj nachádza

1. knihovny vo Fedore

libxml2, libxml2-devel, libjpeg, libjpeg-devel, libpng, libpng-devel, libpng10, libpng10-devel, gd, gd-devel, fontconfig-devel, xorg-x11-devel

2. MySQL

2.1. kontrola predchádzajúcich inštalácií

rpm -qa | grep -i mysql

ak to nie je čisté, tak pomocou rpm alebo yum vyčistiť

2.2. MySQL balíky, install

Po všetkých možných minulých zábavných peripetiách dávam prednosť .rpm balíkom. V zásade potrebné 4:

MySQL-server…rpm
MySQL-client…rpm
MySQL-shared…rpm
MySQL-devel…rpm

rpm -i MySQL*

Binárky sa štandardne nainštalujú do /usr/bin/; libky do /usr/lib/; konfiguráky a štartoavcie skripty do /etc/

/usr/bin/mysql – cesta k binárke servru
/usr/bin/mysqladmin – cesta k MySQL Admin
/usr/bin/mysqldump – cesta k MySQL dump
/usr/bin/mysqlimport – cesta k MySQL import

2.3. MySQL start, stop, login

/etc/init.d/mysql start/stop
chkonfig –add mysql

Logovanie v shellu:

mysql -p
mysql -u $user$ -p

2.4. MySQL postinstallum

Po inštalácii nie je server zabezpečený a je tam testovacia databáza a default user. Obyčajne vyzve po inštalácii MySQL k zabezpečeniu pomocou skriptu /usr/bin/mysql_secure_installation.

3. Apache

3.1. príprava

Žiadna redhatová systémová inštalácia, nýbrž nová kompilačka. Najprv, či tam nejaký apač neškodí:

rpm -qa | grep -i apache

3.2. configure

Stačí nastaviť miesto pre inštaláciu, threading model a podporu zásuvných modulov.

./configure
–prefix=/usr/local/apache2
–with-mpm=prefork
–enable-so

3.3. Start, stop, info

Apache binárka je nainštalená v /usr/local/apache2/bin/, hlavný konfigurák je v /usr/local/apache2/conf/httpd.conf

Spustenie, zastavenie:

/usr/local/apache2/bin/apachectl start/stop/restart

Pokiaľ chcem apač zapínať automaticky po reštarte systému, chce to vykopírovať init z binárky:

cp /usr/local/src/httpd…stiahnutá verzia/build/rpm/httpd.init /etc/rc.d/init.d/apache
chkonfig –add apache
chkonfig –level 35 apache on

Webroot je v /usr/local/apache2/htdocs/. Zmena prístupových práv, nech si tam môže sypať súbory normálny user.

4. PHP

Najlepšou praxou je nechať sa viesť konfigurákom zo svojho hostingu, ktorý si nechám vypísať cez phpinfo() – je to hneď na začiatku. Moja inštalácia sa potom podobá tej, ktoré je “vonku” a nie sú problémy s knihovnami, cestami a nastavením. Jelikož som kompiloval apache do /usr/local/, tak phpko tiež nápodobne – /usr/local/php5/.

Po skompilovaní PHP je nutné do hlavného apačieho konfiguráku uviesť, aby požiadavky na súbory .php Apache predával PHP interpretru:

LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php

Konfigurák tu, ako shellový skript.

#!bin/bash
#script for php 5.3. configuration
./configure \
--prefix=/usr/local/php5 \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-mysql=/usr \
--with-mysqli=/usr/bin/mysql_config \
--with-pdo-mysql=/usr/bin/mysql_config \
--with-libxml-dir=/usr/lib \
--with-zlib \
--with-zlib-dir=/usr/lib \
--enable-sockets \
--enable-soap \
--with-gd \
--with-jpeg-dir=/usr \
--enable-exif \
--enable-force-cgi-redirect \
--enable-mbstring \
--with-openssl \
--with-curl \
--with-gettext \
--with-bz2 \
--with-mhash \
--with-gmp \
--with-iconv \
--enable-calendar \
--enable-ftp \
--enable-bcmath \
--enable-wddx \
--enable-xml \
--enable-inline-optimization \
--with-mcrypt \
--with-kerberos \
--enable-fastcgi \
--with-xsl \
--with-xmlrpc

píše: admin

January 22nd, 2012 o 1:34 pm

chlievik: linux,mysql

1 odpoveď to 'Apache + PHP + MySQL kompilácia na Fedore 13/14/15'

Subscribe to comments with RSS or TrackBack to 'Apache + PHP + MySQL kompilácia na Fedore 13/14/15'.

  1. trocha starsie, ale dobre – http://www.trdlo.cz/webserver.php

    drd

    18 Oct 12 at 6:18

okomentuj