Linux简单安装Mysql+Apach+PHP+phpMyAdmin
生活随笔
收集整理的這篇文章主要介紹了
Linux简单安装Mysql+Apach+PHP+phpMyAdmin
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
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」命令找出其位置;
如果是自己也有手動安裝 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
原文URL:
http://www.w3china.org/blog/more.asp?name=zhanglincon&id=36639
本文來自ChinaUnix博客,如果查看原文請點: http://blog.chinaunix.net/u/8463/showart_1119409.html
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」命令找出其位置;
如果是自己也有手動安裝 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
原文URL:
http://www.w3china.org/blog/more.asp?name=zhanglincon&id=36639
本文來自ChinaUnix博客,如果查看原文請點: http://blog.chinaunix.net/u/8463/showart_1119409.html
總結
以上是生活随笔為你收集整理的Linux简单安装Mysql+Apach+PHP+phpMyAdmin的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: rpm 命令
- 下一篇: subversion for linu