·¢²©ÎÄ
¼¼ÊõÎÞÏÞ

http://blog.chinaunix.net/space.php?uid=78707

¹²Í¬×ßÔÚ¼¼ÊõµÄÇ°ÑØ£¡   
¸öÈË×ÊÁÏ
  • ²©¿Í·ÃÎÊ£º707756
  • ²©ÎÄÊýÁ¿£º591
  • ²©¿Í»ý·Ö£º17416
  • ²©¿ÍµÈ¼¶£ºÉϽ«
  • ¹Ø×¢ÈËÆø£º 5
  • ×¢²áʱ¼ä£º2005-08-26 09:59:43
¶©ÔÄÎҵIJ©¿Í
  • ¶©ÔÄ
  • ¶©Ôĵ½Ïʹû
  • ¶©Ôĵ½×¥Ïº
  • ¶©Ôĵ½Google
×ÖÌå´óС£º´ó ÖРС²©ÎÄ
·ÖÀࣺ General


Linux¼òµ¥°²×°Mysql+Apach+PHP+phpMyAdmin
2008Äê06ÔÂ02ÈÕ ÐÇÆÚÒ» ÉÏÎç 01:00

´ÓÍøÉÏ¿´µ½Ðí¶àApache+Mysql+PHPµÄ°²×°Îĵµ£¬µ«ÓеÄ×ÜÊÇ»áÓÐд´íÎó£¬×î½üÎÒ¸ù¾ÝÍøÉÏÕÒµÄһЩÎĵµ£¬²¢¸ÄÕýÆäÖеĴíÎó£¬Ð´ÁËÒ»¸öÏêϸµÄ°²×°²½Ö裬ÒÔ¹©´ó¼ÒµÄѧϰºÍ²Î¿¼£¬Èç¹ûÓдíÎó²¢¼ÓÒÔ¸üÕý £º
  
ÎÒµÄϵͳÊÇredhat as5 ½¨Òé´ó¼ÒÍêÈ«°²×°£¬ÒÔÃⰲװʱȱÉÙÏà¹ØµÄ±àÒëÆ÷µÈµÈ¡£

Ò»¡¢°²×°mysql£¨mysql-5.0.21.tar.gz£©   
# tar zxf mysql-5.0.21.tar.gz
# cd mysql-5.0.21
#./configure --prefix=/usr/local/mysql --sysconfdir=/etc --localstatedir=/var/lib/mysql/
˵Ã÷£º
   #prefix=/usr/local/mysql mysql°²×°µÄÄ¿±êĿ¼
   #sysconfdir=/etc my.iniÅäÖÃÎļþµÄ·¾¶
   #localstatedir=/var/lib/mysql Êý¾Ý¿â´æ·ÅµÄ·¾¶
# make
# make install
# groupadd mysql
# useradd mysql -g mysql
# cp support-files/my-medium.cnf /etc/my.cnf
#£¨Õâ¸öÎļþ¼ÐÊÇÔ­À´±àÒëµÄĿ¼Ïµģ©Ñ¯ÎÊÄãÊÇ·ñÒª¸²¸Çʱ£¬ÊäÈë"y"
#/usr/local/mysql/bin/mysql_install_db --user=mysql
# cd /usr/local/mysql      È»ºóÉèÖÃȨÏÞ
# chown -R root .                #É趨rootÄÜ·ÃÎÊ/usr/local/mysql
# chown -R mysql /var/lib/mysql               #É趨mysqlÓû§Äܹ»·ÃÎÊ/var/lib/mysql
# chgrp -R mysql /usr/local/mysql     #É趨mysql×éÄÜ·ÃÎÊ/usr/local/mysql
# /usr/local/mysql/bin/mysqld_safe --user=mysql &             #°²È«Æô¶¯mysql

# PATH=$PATH:/usr/local/mysql/bin        //ÈÃϵͳÕÒµ½mysql
# export PATH
# echo"/usr/local/mysql/lib/mysql">>/etc/ld.so.conf
# ldconfig -v




¶þ¡¢°²×°apache £¨httpd-2.0.59.tar.gz£©
# tar zxf httpd-2.0.59.tar.gz
# cd httpd-2.0.59
# ./configure --prefix=/usr/local/apache --enable-so --enable-rewrite --enable-mods-shared=most
˵Ã÷£º
--enable-soÑ¡ÏÈÃApache¿ÉÒÔÖ§³ÖDSOģʽ£¬×¢Ò⣬ÕâÀï²ÉÓõÄÊÇApache2.0µÄÓï·¨¡£Èç¹ûÄãµÄApacheÊÇ1.3°æ±¾£¬Ó¦¸ÄΪ--enable-module=so¡£
--enable-mods-shared=mostÑ¡Ï¸æËß±àÒëÆ÷½«ËùÓбê׼ģ¿é¶¼±àÒëΪDSOÄ£¿é¡£ÄãÒªÊÇÓõÄÊÇApache1.3,¸ÄΪ--enable-shared=max¾Í¿ÉÒÔ¡£
--enable-rewriteÑ¡Ï֧³ÖµØÖ·ÖØÐ´¹¦ÄÜ£¬Ê¹ÓÃ1.3°æ±¾µÄÅóÓÑÇ뽫Ëü¸ÄΪ--enable-module=rewrite¡£

# make
# make install
# vi /usr/local/apache/conf/httpd.conf #Æô¶¯ApacheÖеÄphpÑ¡Ïî,ÕÒµ½ÏÂÃæÁ½ÐÐ
DirectoryIndex index.php                 #ÐÞ¸ÄĬÈÏÆô¶¯Ò³
DocumentRoot                                   #Ö¸¶¨Ö÷Ŀ¼(/usr/local/apache2/htdocs)
ServerName 127.0.0.1:80
# /usr/local/apache/bin/apachectl start
             


Èý¡¢°²×°php £¨php-5.1.6.tar.bz2£©
# tar jxf php-5.1.6.tar.bz2
# cd php-5.1.6
# ./configure --with-apxs2=/usr/local/apache/bin/apxs --disable-debug --enable-safe-mode --enable-trans-sid --with-xml --with-mysql=/usr/local/mysql --enable-short-tags --with-gd --with-zlib --with-jpeg --with-png --enable-memory-limit --disable-posix --with-config-file-path=/usr/local/lib
˵Ã÷£º
? --with-apxs2=/usr/local/apache/bin/apxs \   ÕâÊǼÓÈëapacheÖÐΪDSOÄ£¿éµÄλÖÃ
? --disable-debug \ #¹Ø±ÕphpÄÚ²¿µ÷ÊÔ
? --enable-safe-mode \ #´ò¿ªphpµÄ°²È«Ä£Ê½
? --enable-trans-sid \
? --with-xml \ #Ö§³Öxml
? --with-mysql \ #Ö§³Ömysql
? --enable-short-tags \ #Ö§³ÖPHPµÄ¶Ì±ê¼Ç
? --with-gd \ #Ö§³ÖGD¿â
? --with-zlib \ #Ö§³Özlib
? --with-jpeg \
? --with-png \
? --enable-memory-limit \
? --disable-posix \
? --with-config-file-path=/usr/local/lib
×ÜÖ®¸´ÖÆÕ³Ìù¾Í¿ÉÒÔÁË£¬-_-

# ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-apxs2=/usr/local/apache/bin/apxs

×¢Ò⣺Èç¹û˵mysql+apache ¶¼ÊÇĬÈϰ²×°£¬configureÅäÖ÷½·¨

# ./configure --with-apxs2=/usr/sbin/apxs --disable-debug --enable-safe-mode --enable-trans-sid --with-xml --with-mysql=/usr/share/mysql --enable-short-tags --with-gd --with-zlib --with-jpeg --with-png --enable-memory-limit --disable-posix --with-config-file-path=/usr/local/lib

# make
# make install
# cp php.ini-dist /usr/local/lib/php.ini ¸´ÖÆphpµÄÅäÖÃÎļþ
# cd /usr/local/lib/
# vi php.ini   ÐÞ¸ÄÅäÖÃÎļþ
register_globals = On Ò»°ãÔÚ414ÐÐ

max_execution_time = 30 ; // ¸ÄΪ600 (Ôö¼Ó´¦Àí½Å±¾µÄʱ¼äÏÞÖÆ)
max_input_time = 600 ; //×î´óÊä³öʱ¼ä600Ãë
memory_limit = 8M ; //¸ÄΪ40M (ÕâÑù²ÅÄÜ·¢10MµÄ¸½¼þ)
register_global =On
post_max_size = 2M ; //php¿É½ÓÊÜµÄ post ·½·¨´óС 2M
file_uploads = On ; //ÔÊÐíÉÏÔØÎļþ
upload_max_filesize = 2M ; //×î´óÉÏÔØÎļþ2M
session.auto_start = 1 ; //session×Ô¶¯Æô¶¯

Èç¹û±àÒëPHP:make³ö´í
configure: error: Cannot find MySQL header files under yes.
Note that the MySQL client library is not bundled anymore.
½â·¨£º¡¡¡¡¡¡
Èç¹û²»ÖªµÀ header file ÔÚÄÄ£¬Óà ¡¸find / -name mysql.h¡¹ÃüÁîÕÒ³öÆäλÖ㻡¡¡¡¡¡
Èç¹ûÊÇ×Ô¼ºÒ²ÓÐÊÖ„Ó°²Ñb MySQL Ì×¼þµÄÔ’£¬Ö±½ÓÖ¸¶¨Ô“λÖá£
ÔÚ ./configure ϲÎÊýÖ¸¶¨ header file µÄλÖ㨼´mysql°²×°Ä¿Â¼£©£¬ÈçÏÂ:
./configure --with-apxs2=/usr/local/Apache2/bin/apxs --with-mysql=
/usr/local/mysql


ËÄ¡¢ÕûºÏapacheºÍphp
# vi /usr/local/apache/conf/httpd.conf   ÐÞ¸ÄapacheµÄÅäÖÃÎļþ
Ìí¼Ó:      AddType application/x-httpd-php .php
       AddType application/x-httpd-php-source .phps           //×¢Ò⽫ÕâÁ½ÐÐÌí¼ÓÔÚÆäËüAddTypeºóÃæ
È·±£ÎļþÖÐÓÐÏÂÃæÒ»¶Î£¬Èç¹ûûÓеϰ¾ÍÌí¼ÓÔÚËùÓÐLoadModuleÖ®ºó
LoadModule php5_module        modules/libphp5.so
ÓÉÓÚÎÒ×°µÄ°æ±¾½Ï¸ßËùÒÔÊÇphp5£¬Èç¹ûÊÇLoadModule php4_module        modules/libphp4.soµÄ»°Ò²¿ÉÒÔ

# /usr/local/apache/bin/apachectl start             //Èç¹ûÕâµØ·½±¨ÈçÏ´í

httpd: Syntax error on line 53 of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache/modules/libphp5.so into server: /usr/local/apache/modules/libphp5.so: cannot restore segment prot after reloc: Permission denied
Ô­Òò£ºÊÇLinuxÓÐÒ»¸öSELinux±£»¤Ä£Ê½ÒýÆðµÄ¡£
½â¾ö°ì·¨£º
1¹Ø±ÕSELINUXµÄ·½·¨:
vi /etc/selinux/config ½«SELINUX=enforcing ¸Ä³ÉSELINUX=disabled ÐèÒªÖØÆô
Õâ¸ö·½·¨¿ÉÄÜ»á¶Ô·þÎñÆ÷´øÀ´·çÏÕ¡£
2²»¹Ø±ÕSELINUXµÄ·½·¨:
# setenforce 0
# chcon -c -v -R -u system_u -r object_r -t textrel_shlib_t /usr/local/apache/modules/libphp5.so
# service httpd restart
# setenforce 1

server httpd start ±¨´í£ºÆô¶¯ httpd£º[Wed May 07 02:17:20 2008] [warn] module php4_module is already loaded, skipping

½â¾ö°ì·¨£º²é¿´# vi /usr/local/apache/conf/httpd.conf
ÊÇ·ñÓжþÌõÏàָͬÁîLoadModule php4_module        modules/libphp4.so ɾ³ýÒ»Ìõ£¬¼´¿É


Îå¡¢°²×°phpMyAdmin   £¨phpMyAdmin-2.6.0.tar.gz£©
# tar zxf phpMyAdmin-2.6.0.tar.gz
# mv phpMyAdmin-2.6.0 /usr/local/apache/htdocs/
# vi config.inc.php   ÐÞ¸ÄÕâ¸öÎļþ
    $cfg['Servers'][$i]['host']       = 'localhost';   //¸Ä³ÉÄãÊý¾Ý¿â·þÎñÆ÷µÄÖ÷»úÃû»òIPµØÖ·£»
   $cfg['Servers'][$i]['user']       = 'root';    // MySQL Êý¾Ý¿âµÄÓû§Ãû£»
   $cfg['Servers'][$i]['password']    = '';       // MySQL Êý¾Ý¿âµÄÃÜÂ룻
Ö÷ÒªÐÞ¸ÄÕ⼸Ï±£´æÍ˳ö
²âÊÔ£º

http://IP/phpMyAdmin-2.6.0
ÕâÀï¿ÉÒÔÐÞ¸ÄphpMyAdmin-2.6.0Õâ¸öĿ¼µÄÃû×Ö£¬ÕâÑù·ÃÎʱȽϷ½±ã
 
 
 

½â¾öCannot load /usr/local/apache/modules/libphp5.soµÄ·½·¨
Ô­´´¿Õ¼ä,  ÎÄÕÂÊÕ²Ø,  Èí¼þ¼¼Êõ

zhanglincon ·¢±íÓÚ 2008-6-9 14:51:48

½ñÌìŪһ¸öCentOS,°²×°httpd-2.2.8 ºÍphp-5.2.5£¬Ò»ÇÐ˳Àû¡£

×îºóÒ»²½ÖØÐÂÆô¶¯apache±¨ÈçÏ´íÎó:
httpd: Syntax error on line 53 of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache/modules/libphp5.so into server: /usr/local/apache/modules/libphp5.so: cannot restore segment prot after reloc: Permission denied

Ô­Òò£ºÊÇLinuxÓÐÒ»¸öSELinux±£»¤Ä£Ê½ÒýÆðµÄ¡£

½â¾ö°ì·¨£º

1¹Ø±ÕSELINUXµÄ·½·¨:
vi /etc/selinux/config ½«SELINUX=enforcing ¸Ä³ÉSELINUX=disabled ÐèÒªÖØÆô
Õâ¸ö·½·¨¿ÉÄÜ»á¶Ô·þÎñÆ÷´øÀ´·çÏÕ¡£

2²»¹Ø±ÕSELINUXµÄ·½·¨:
# setenforce 0
# chcon -c -v -R -u system_u -r object_r -t textrel_shlib_t /usr/local/apache/modules/libphp5.so

# service httpd restart
# setenforce 1

Ç×£¬Äú»¹Ã»ÓеǼ,Çë[µÇ¼]»ò[×¢²á]ºóÔÙ½øÐÐÆÀÂÛ