2010-03-05 5 views
3

Я хотел бы сделать самодостаточными ЛАМПЕ дистрибутивом программный пакет от источника, по крайней мере, следующее:
* PHP должен иметь Mysqli, LDAP и поддержка GD
* обязательны для всех необходимых .so в (например, libpng, необходимый GD) (самодостаточно)создать распределение пользовательских ЛАМПЫ как XAMPP

Мне удалось сделать это, но я продолжаю исправлять причуды, так что я решил начать с широко используемого, как XAMPP, но я не могу найти источник, который его создает (некоторый сценарий оболочки, где он записывает все параметры конфигурации, связанные источники и т. д.).

Где я могу найти такой скрипт/информацию?

Мне это нужно, поэтому мои пользователи легко устанавливают для моего программного обеспечения, они не являются администраторами LAMP.

Мне нужны параметры конфигурации пакетов XAMPP или аналогичные.

+0

Это может быть лучше подходит для serverfault.com – Josh

ответ

2

Вот параметры настраивают, которые я использовал, чтобы построить свой собственный стек лампы.
Они извлекаются из пакетов ламп CentOS rpm.

# APACHE 
cd httpd-2.2.14/ 
./configure \ 
--prefix=/opt/clamp \ 
--sysconfdir=/opt/clamp/etc \ 
--enable-auth-dbm \ 
--enable-cern-meta \ 
--enable-auth-digest \ 
--enable-charset-lite \ 
--enable-deflate \ 
--enable-expires \ 
--enable-cache \ 
--enable-disk-cache \ 
--enable-file-cache \ 
--enable-headers \ 
--enable-info \ 
--enable-mime-magic \ 
--enable-proxy \ 
--enable-proxy-ajp \ 
--enable-proxy-balancer \ 
--enable-proxy-connect \ 
--enable-proxy-ftp \ 
--enable-proxy-http \ 
--enable-rewrite \ 
--enable-so \ 
--enable-ssl 
make 
make install 
cd .. 

# MYSQL 
cd mysql-5.1.44/ 
./configure \ 
--prefix=/opt/clamp \ 
--sysconfdir=/opt/clamp/etc \ 
--libexecdir=/opt/clamp/sbin \ 
--localstatedir=/opt/clamp/var \ 
--with-unix-socket-path=/opt/clamp/tmp/mysql.sock 
make 
make install 
cd .. 

# LIBS_DEP 
yum install freetype 
yum install freetype-devel 
yum install libjpeg 
yum install libjpeg-devel 
yum install libpng 
yum install libpng-devel 
yum install libXpm 
yum install libXpm-devel 

# PHP 
cd php-5.2.13/ 
./configure \ 
--prefix=/opt/clamp \ 
--sysconfdir=/opt/clamp/etc \ 
--with-apxs2=/opt/clamp/bin/apxs \ 
--with-config-file-path=/opt/clamp/etc/php.conf \ 
--disable-debug \ 
--with-pic \ 
--disable-rpath \ 
--without-pear \ 
--with-bz2 \ 
--with-curl \ 
--with-freetype-dir=/usr \ 
--with-png-dir=/usr \ 
--enable-gd-native-ttf \ 
--without-gdbm \ 
--with-gettext \ 
--with-gmp \ 
--with-iconv \ 
--with-jpeg-dir=/usr \ 
--with-openssl \ 
--with-pspell \ 
--with-zlib \ 
--with-layout=GNU \ 
--enable-exif \ 
--enable-ftp \ 
--enable-magic-quotes \ 
--enable-sockets \ 
--enable-sysvsem --enable-sysvshm --enable-sysvmsg \ 
--enable-wddx \ 
--with-kerberos \ 
--enable-ucd-snmp-hack \ 
--enable-shmop \ 
--enable-calendar \ 
--without-sqlite \ 
--enable-force-cgi-redirect \ 
--enable-pcntl \ 
--with-imap --with-imap-ssl \ 
--enable-mbstring \ 
--enable-mbregex \ 
--with-ncurses \ 
--with-gd \ 
--enable-bcmath \ 
--with-xmlrpc \ 
--with-ldap --with-ldap-sasl \ 
--with-mysql=/opt/clamp \ 
--with-mysqli=/opt/clamp/bin/mysql_config \ 
--enable-dom \ 
--with-pgsql \ 
--enable-soap \ 
--enable-xmlreader --enable-xmlwriter \ 
--enable-fastcgi 
make 
make install 

ln -s /opt/clamp/share/mysql/mysql.server /opt/clamp/bin/mysql.server 
mkdir /opt/clamp/tmp 
/bin/cp -f /root/clamp/use/etc/* /opt/clamp/etc 
/bin/cp -f /root/clamp/use/run /opt/clamp 
/bin/cp -f /root/clamp/use/install /opt/clamp 

./bin/mysql_install_db --user=clamp \ 
--basedir=/opt/clamp \ 
--datadir=/opt/clamp/var 

groupadd clamp 
useradd -g clamp -s /bin/nologin -d /opt/clamp clamp 
chown -R clamp.clamp /opt/clamp 


# start first !!!!!!!!! 

/opt/clamp/bin/mysqladmin -u root -P 3307 password 123clamp456 
/opt/clamp/bin/mysqladmin -u root -p123clamp456 -P 3307 flush-privileges 

/opt/clamp/bin/mysql -u root -p123clamp456 -P 3307 -e "CREATE USER 'clamp'@'%' IDENTIFIED BY '123clamp456'"; 
/opt/clamp/bin/mysql -u root -p123clamp456 -P 3307 -e "update mysql.user set password = PASSWORD('123clamp456') where user='clamp'"; 
/opt/clamp/bin/mysql -u root -p123clamp456 -P 3307 -e "GRANT ALL PRIVILEGES ON *.* TO 'clamp'@'localhost' IDENTIFIED BY '123clamp456'"; 
/opt/clamp/bin/mysql -u root -p123clamp456 -P 3307 -e "GRANT ALL PRIVILEGES ON *.* TO 'clamp'@'%' IDENTIFIED BY '123clamp456'"; 
/opt/clamp/bin/mysql -u root -p123clamp456 -P 3307 -e "flush privileges"; 
1

Вы понимаете, что можете активировать эти расширения внутри XAMPP, просто отредактировав файл php.ini?

Также вы должны использовать Imagick (aka ImageMagick) вместо GD, это значительно быстрее (около 3x) и больше функциональности. Imagick заменяет GD.

Я не вижу причины создавать пользовательскую установку, просто настройте ту, которая у вас есть.

+0

я знаю о ImageMagick, но моя программа использует LIBS, которые сидят на вершине GD, быстро eough и достаточно богат для меня. – clyfe

1

Вы хотите создать (и предположительно поддерживать и поддерживать) весь дистрибутив Linux ????? !!!!!

И вы ожидаете полного ответа здесь ???? !!!!!!!!!!!!!!!!!!!!

Нет никого, кто мог бы дать правильный ответ на этот вопрос - на это уходят годы, чтобы узнать, как это сделать, IIRC в настоящее время не существует одноманговых дистрибутивов Linux.

Возможно, вы можете взглянуть на Puppy Linux, который поставляется с множеством инструментов для создания пользовательских установок.

В качестве альтернативы, возможно, было бы намного проще создать ссылочную реализацию, а затем распространить ее как образ виртуальной машины (я недавно начал играть с VirtualBox, который является бесплатным, но есть несколько других - Bochs, VMWare. ...).

Хотя вы, кажется, путаете LAMP (что все от ОС) с помощью XAMPP (который содержит только веб-сервер, db, PERL и PHP).

C.

+0

Я добавил разъяснения в вопрос! – clyfe