yum -y install gcc cpp gcc-c++ compat-gcc-32-g77 flex openldap-devel pam-devel sendmail-cf vsftpd telnet-server yum -y install gd gd-devel libjpeg libjpeg-devel libpng libpng-devel libtiff libtiff-devel freetype-devel netpbm netpbm-progs
phpinfo ÇÔ¼ö·Î Á¡°Ë ÈÄ ¾Æ·¡¿Í °°ÀÌ JPG Support enabled °¡ ¾øÀ» °æ¿ì PHP configure ¸í·É½Ã --with-jpeg ¸¦ --with-jpeg-dir=/usr ·Î º¯°æ µÚ¿¡ ´Ù½Ã ÄÄÆÄÀÏ ÇÒ °Í.
GD Support enabled GD Version bundled (2.0.15 compatible) GIF Read Support enabled PNG Support enabled WBMP Support enabled XBM Support enabled
#!/bin/bash
# # APM ¼³Ä¡ #
MOD_SEC_SRC_PATH="modsecurity-apache_1.9.5"
APA_PATH="/usr/local/apache" APA_CONF_PATH="$APA_PATH/conf/httpd.conf" APA_VHOST_PATH="$APA_PATH/conf/vhost.conf" APA_SOURCE_PATH="apache_1.3.37"
PHP_SOURCE_PATH="php-4.4.7"
MYSQL_PATH="/usr/local/mysql" MYSQL_SOURCE_PATH="mysql-4.1.22" MYSQL_PASS="gong2004pass"
ICONV_PATH="libiconv-1.10"
IP_Add="210.114.223.109"
#---------------------------------------------------------------------------------------------------
# # iconv ¼³Ä¡ # iconv ¶óÀ̺귯¸® ÇÔ¼ö´Â ¹®ÀÚ¿À» ¿©·¯°¡Áö ¹®Àڼ ÀÎÄÚµù³¢¸® º¯È¯ÇÕ´Ï´Ù. #
cd $ICONV_PATH ./configure --prefix=/usr make clean make make install cd ..
#---------------------------------------------------------------------------------------------------
# # MySQL ¼³Ä¡ # rpm -qa | grep mysql yum -y remove mysql cd $MYSQL_SOURCE_PATH ./configure --prefix=/usr/local/mysql --without-readline --with-charset=euckr --with-language=korean
# CentOS¿¡¼ # checking for termcap functions library... configure: error: No curses/termcap library found yum -y install ncurses-devel
# CentOS¿¡¼ # checking HIST_ENTRY is declared in readline/readline.h... # configure: error: Could not find system readline or libedit libraries # Use --with-readline or --with-libedit to use the bundled # versions of libedit or readline yum -y install readline-devel
# checking "LinuxThreads"... "Not found" # configure: error: This is a linux system and Linuxthreads was not # found. On linux Linuxthreads should be used. Please install Linuxthreads # (or a new glibc) and try again. See the Installation chapter in the # Reference Manual for more information. # # À̹®Á¦´Â mysql-4.0ÀÇ NPTL ÀÇ ¾ÈÁ¤¼ºÀ» ³Ê¹« °í·ÁÇÑ ³ª¸ÓÁö ¹ß»ýÇÑ ¹ö±× # mysql configure °úÁ¤¿¡¼ pthread.h ÆÄÀÏÀ» ã¾Æ ¾Æ·¡ ¹®±¸°¡ ÀÖ´ÂÁö Á¶»ç # # echo '/* Linuxthreads */' >> /usr/include/pthread.h
make clean make make install
/usr/local/mysql/bin/mysql_install_db
useradd mysql -d /usr/local/mysql -s /sbin/nologin
chown -R root.mysql /usr/local/mysql chown -R mysql /usr/local/mysql/var
/usr/local/mysql/bin/mysqld_safe &
/usr/local/mysql/bin/mysqladmin -u root password "$MYSQL_PASS" /usr/local/mysql/bin/mysqladmin -u root -h localhost.localdomain password "$MYSQL_PASS"
cp -f /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf cp -f /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld ln -s /etc/rc.d/init.d/mysqld /etc/rc.d/rc3.d/S97mysqld
/etc/rc.d/init.d/mysqld stop /etc/rc.d/init.d/mysqld start
cd ..
#---------------------------------------------------------------------------------------------------
# # apache_src # cd $APA_SOURCE_PATH sed -e "s/#define HARD_SERVER_LIMIT 256/#define HARD_SERVER_LIMIT 1024/g" src/include/httpd.h > httpd.h.bak mv -f httpd.h.bak src/include/httpd.h
./configure --prefix=$APA_PATH
cd ..
#---------------------------------------------------------------------------------------------------
# # PHP Source # # ¾Æ·¡ Àû¿ëÇغ¼°Í --enable-mbstr-enc-trans --enable-mbstring --enable-mbregex
# curl ¿À·ù ¹ß»ý½Ã # checking for CURL in default path... not found # configure: error: Please reinstall the libcurl distribution - # easy.h should be in /include/curl/ yum -y install curl-devel cd $PHP_SOURCE_PATH ./configure \ --with-mysql=$MYSQL_PATH \ --with-apache=../$APA_SOURCE_PATH \ --with-config-file-path=$APA_PATH/conf \ --with-charset=euc_kr \ --with-language=korean \ --disable-debug \ --enable-magic-quotes \ --enable-ftp \ --enable-xml \ --enable-exif \ --enable-sockets \ --enable-track-vars=yes \ --with-gd \ --enable-gd-native-ttf \ --with-freetds \ --with-zlib \ --with-curl \ --with-png \ --with-freetype \ --with-jpeg-dir=/usr \ --with-iconv \ --with-ttf \ --with-tiff # iconv ¿¡·¯ ³ª¸é --with-iconv=/usr ÇÒ°Í.
make clean make make install
cd ..
#--------------------------------------------------------------------------------------------------- # # modsecurity # cp $MOD_SEC_SRC_PATH/apache1/mod_security.c ./src/modules/extra
# apache config Ãß°¡
--activate-module=src/modules/extra/mod_security \ --enable-module=security \
# # DSO·Î Ãß°¡½Ã /usr/local/apache/bin/apxs -cia modsecurity-apache-1.9.5/apache1/mod_security.c # -c : mod_security.c¸¦ ÄÄÆÄÀÏ # -i : °øÀ¯°´Ã¼¸¦ À¥¼¹ö modules µð·ºÅ丮¿¡ ¼³Ä¡ # -a : httpd.conf ¼³Á¤ÆÄÀÏ¿¡ ÀûÀýÇÑ LoadModule ÁÙÀ» Ãß°¡
#---------------------------------------------------------------------------------------------------
# # Apache ¼³Ä¡ #
cd $APA_SOURCE_PATH ./configure \ --with-layout=Apache \ --prefix=$APA_PATH \ --activate-module=src/modules/php4/libphp4.a \ --enable-rule=SHARED_CORE \ --enable-module=so \ --enable-module=rewrite \ --enable-shared=max
make clean make make install
cd ..
#---------------------------------------------------------------------------------------------------
# # # php.ini # #
sed -e "s/register_globals = Off/register_globals = On/g" $PHP_SOURCE_PATH/php.ini-dist > php.ini sed -e "s/allow_url_fopen = On/allow_url_fopen = Off/g" php.ini > php.ini.bak mv -f php.ini.bak php.ini sed -e "s/;upload_tmp_dir =/upload_tmp_dir = \/tmp/g" php.ini > php.ini.bak mv -f php.ini.bak php.ini sed -e "s/upload_max_filesize = 2M/upload_max_filesize = 100M/g" php.ini > php.ini.bak mv -f php.ini.bak php.ini sed -e "s/post_max_size = 8M/post_max_size = 100M/g" php.ini > php.ini.bak mv -f php.ini.bak php.ini sed -e "s/session.gc_maxlifetime = 1440/session.gc_maxlifetime = 86400/g" php.ini > php.ini.bak mv -f php.ini.bak $APA_PATH/conf/php.ini
#---------------------------------------------------------------------------------------------------
# # httpd.conf #
# indexes sed -e "s/Indexes//g" $APA_CONF_PATH > $APA_CONF_PATH.bak mv -f $APA_CONF_PATH.bak $APA_CONF_PATH
# ServerName IP_Add sed -e "s/#ServerName www.example.com/ServerName $IP_Add/g" $APA_CONF_PATH > $APA_CONF_PATH.bak mv -f $APA_CONF_PATH.bak $APA_CONF_PATH
# DirectoryIndex index.html index.htm index.php sed -e "s/DirectoryIndex index.html/DirectoryIndex index.html index.htm index.php/g" $APA_CONF_PATH > $APA_CONF_PATH.bak mv -f $APA_CONF_PATH.bak $APA_CONF_PATH
# PHP sed -e "s/x-tar .tgz/x-tar .tgz\\n\\n # And for PHP 4.x, use:\\n #\\n\\n AddType application\/x-httpd-php .php .html .htm .php3 .cgi .php4\\n AddType application\/x-httpd-php-source .phps/g" $APA_CONF_PATH > $APA_CONF_PATH.bak mv -f $APA_CONF_PATH.bak $APA_CONF_PATH
# MaxKeepAliveRequests 0 sed -e "s/MaxKeepAliveRequests 100/MaxKeepAliveRequests 0/g" $APA_CONF_PATH > $APA_CONF_PATH.bak mv -f $APA_CONF_PATH.bak $APA_CONF_PATH
# KeepAliveTimeout 5 sed -e "s/KeepAliveTimeout 15/KeepAliveTimeout 5/g" $APA_CONF_PATH > $APA_CONF_PATH.bak mv -f $APA_CONF_PATH.bak $APA_CONF_PATH
# MinSpareServers 15 sed -e "s/MinSpareServers 5/MinSpareServers 15/g" $APA_CONF_PATH > $APA_CONF_PATH.bak mv -f $APA_CONF_PATH.bak $APA_CONF_PATH
# MaxSpareServers 60 sed -e "s/MaxSpareServers 10/MaxSpareServers 60/g" $APA_CONF_PATH > $APA_CONF_PATH.bak mv -f $APA_CONF_PATH.bak $APA_CONF_PATH
# StartServers 15 sed -e "s/StartServers 5/StartServers 15/g" $APA_CONF_PATH > $APA_CONF_PATH.bak mv -f $APA_CONF_PATH.bak $APA_CONF_PATH
# MaxClients 1024 sed -e "s/MaxClients 150/MaxClients 1024/g" $APA_CONF_PATH > $APA_CONF_PATH.bak mv -f $APA_CONF_PATH.bak $APA_CONF_PATH
# MaxRequestsPerChild 1000 sed -e "s/MaxRequestsPerChild 0/MaxRequestsPerChild 1000/g" $APA_CONF_PATH > $APA_CONF_PATH.bak mv -f $APA_CONF_PATH.bak $APA_CONF_PATH
# RLimitMEM 20480000 21504000 # LimitRequestBody 7168000 #sed -e "s//RLimitMEM 20480000 21504000\\n\\n LimitRequestBody 7168000/g" $APA_CONF_PATH > $APA_CONF_PATH.bak #mv -f $APA_CONF_PATH.bak $APA_CONF_PATH
#--------------------------------------------------------------------------------------------------- # # ModSecurity Config # echo "Include conf/modsecurity.conf" >> $APA_CONF_PATH
#--------------------------------------------------------------------------------------------------- # # Virtual Host Setting # cat << EOF >> $APA_CONF_PATH NameVirtualHost $IP_Add include conf/vhost.conf EOF
cat << EOF > $APA_VHOST_PATH # # Sample # # # ServerAdmin nig0412@tolinux.net # DocumentRoot /home/cybermoon/public_html # ServerName cybermoon.co.kr # ServerAlias *.cybermoon.co.kr # Redirect / http://www.cybermoon.com/ # # AllowOverride AuthConfig # Options ExecCGI # Order allow,deny # Allow from all # # ErrorLog logs/cybermoon.co.kr.error_log # CustomLog logs/cybermoon.co.kr.access_log combined env=!not_log #EOF #---------------------------------------------------------------------------------------------------
# # phpinfo # echo " phpinfo(); ?>" > $APA_PATH/htdocs/phpinfo.html
#---------------------------------------------------------------------------------------------------
# # start # $APA_PATH/bin/apachectl stop $APA_PATH/bin/apachectl start # Fedora ¿¡¼ ¾Æ·¡ ¿À·ù ¹ß»ý½Ã # [root@ns ~]# /usr/local/apache/bin/apachectl start # Syntax error on line 222 of /usr/local/apache/conf/httpd.conf: # Cannot load /usr/local/apache/libexec/libphp4.so into server: /usr/local/apache/libexec/libphp4.so: cannot restore segment prot after reloc: Permission denied # /usr/local/apache/bin/apachectl start: httpd could not be started # # /etc/sysconfig/selinux # Fedora¿¡¼ Selinux ºñÈ°¼ºÈ SELINUX=enforcing => SELINUX=disabled
#---------------------------------------------------------------------------------------------------
# # start script # cp -fp $APA_PATH/bin/apachectl /etc/rc.d/init.d/httpd ln -s /etc/rc.d/init.d/httpd /etc/rc.d/rc3.d/S98httpd
#---------------------------------------------------------------------------------------------------
#
# mssql ¿¬°á
#
# # phpize #
cd php-4.4.7/ext/mssql phpize ./configure --with-mssql make make install
Installing shared extensions: /usr/local/lib/php/extensions/no-debug-non-zts-20020429/
# # php.ini #
; Directory in which the loadable extensions (modules) reside. extension_dir = "/usr/local/lib/php/extensions/no-debug-non-zts-20020429/" extension = mssql.so ;extension_dir = "./"
|