[quote]CentOS 5.2,Linux 2.6+ 内核 ,Apache+MySQL+PHP 安装及基本配置过程记录 && 将apache安装为系统服务 收藏
环境:本文中的Linux操作系统为CentOS 5.2,Linux 2.6+ 内核 ,Apache+MySQL+PHP 安装及基本配置过程记录下来以供参考:
一. Apache Web服务器的源代码安装,Tarball安装方式:
1. 源码包:httpd-2.2.6.tar.gz 从 www.apache.org 下载到此目录下:/usr/local/src 同时在 /usr/local 下创建一个httpd目录:mkdir httpd
2. 解压安装包:tar -zxvf httpd-2.2.6.tar.gz
3. 进入解压后的安装包:cd httpd-2.2.6
4. 配置:./configure --prefix=/usr/local/webserver/httpd --enable-cgi ( 意义支持CGI)
5. 编译:make
6. 安装:make install
7. 启动web服务:
/usr/local/httpd/bin/apachectl start 或 service httpd start
或者:开机后立即启动web服务
vi /etc/rc.d/rc.local
新加一行
/usr/local/httpd/bin/apachectl start 或 chkconfig --level 345 httpd on
8. 配置Apache服务器
Apache 配制文件及目录是:/usr/local/ webserver/ httpd/conf/httpd.conf
Apache默认存放主页的位置应该是:/usr/local/ webserver/ httpd/apache/htdocs
DocumentRoot "/usr/local/ webserver/ httpd/htdocs" 这个是存放网页的目录,我们应该把网页的目录指定到哪里,这样当访问网址时,就调用这个目录的文件。
<Directory "/opt/apache/htdocs" 这句应该和DocumentRoot 的目录保持一致。
系统自动添加了这一行,如果没有则自己加入这一行。
LoadModule php5_module modules/libphp5.so
找到: DirectoryIndex index.html index.html.var
改为: DirectoryIndex index.html index.html.var index.php
找到: AddType application/x-tar .tgz
添加: AddType application/x-httpd-php .php (注意空格)
这两项配置就是告诉Apache Server,以后收到的Url用户请求,凡是以php作为后缀,就需要调用php5_module模块mod_php5.so/ php5apache2.dll)进行处理。 mod_php 是把PHP做为APACHE一个内置模块。让apache http服务器本身能够支持PHP语言,不需要每一个请求就启动PHP解释器来解释PHP 。
unix/linux 下,so后缀文件是一个DSO文件,DSO与windows系统下的dll是等价概念,都是把一堆函数封装在一个二进制文件中。调用它们的进程把它们装入内存后,会将其映射到自己的地址空间。DSO全称为Dynamic Shared Object,即动态共享对象。DLL全称为Dynamic Link Library 即动态链接库。
注 :对存放网页的目录执行命令:chmod 755 目录名 chmod -R 755 目录名
9. 重启apache服务器:/usr/local/httpd/bin/apachectl restart
二、编译安装MySQL (源码包安装)
1. /usr/sbin/groupadd mysql // 建立mysql组
2. /usr/sbin/useradd -g mysql mysql // 建立mysql用户并且加入到mysql组中
3. tar zxvf mysql-5.1.38.tar.gz
4. cd mysql-5.1.38/
5. ./configure --prefix=/usr/local/webserver/mysql/ --enable-thread-safe-client
6. make && make install
7. cp /usr/local/src/mysql/support-files/my-medium.cnf /etc/my.cnf 在 support-files目录下有4个模版文件,我们选择其中一个Mysql的配置文件,覆盖/etc/my.cnf(系统默认的配置,其中设置了性能参数和Mysql的一些路径参数);
8. cd /usr/local/mysql //进入mysql目录
9. /usr/local/webserver/mysql/bin/mysql_install_db --basedir=/usr/local/webserver/mysql --datadir= /usr/local/webserver/mysql /data --user=mysql //初试化表并且规定用mysql用户来访问。初始化表以后就开始给mysql和root用户设定访问权限;
10. chown -R root . //设定root能访问/usr/local/mysql;
11. chown -R mysql data //设定mysql用户能访问/usr/local/mysql/data ,里面存的是mysql的数据库文件.这个目录是在/etc/my.cnf中有配置,mysql_install_db时产生;
12. chown -R mysql data/. //设定mysql用户能访问/usr/local/mysql/data/mysql下的所有文件;
13. chgrp -R mysql . //(此处 .前面有空格哦)设定mysql组能够访问/usr/local/mysql;
14. /usr/local/mysql/bin/mysqld_safe --user=mysql & //运行mysql;
15. /usr/local/src/mysql/bin/mysqladmin -u root password 'yourpassword' //MYSQL默认安装密码为空,为mysql设置密码,利用的是/usr/local/src/mysql/bin/下的mysqladmin文件;
16. 启动MySQL服务:
cp /usr/local/src/mysql/support-files/mysql.server /etc/init.d/mysql
vi /etc/init.d/mysql
修改如下定义使其内容为:
basedir=/usr/local/webserver/mysql
datadir=/usr/local/webserver/mysql/data
chmod +x mysql //赋予shell脚本可执行权限:
chkconfig --level 345 mysql on
service mysql restart
Shutting down MySQL... [ OK ]
Starting MySQL [ OK ]
17. 连接:
/usr/local/src/mysql/bin/mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5 to server version: 4.1.14-standard
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
三、PHP的源代码安装,Tarball安装方式:
1. 源码包:php-5.2.4.tar.gz,从www.php.net 下载到此目录下:/usr/local/src 同时在/usr/local下创建一个php目录:mkdir php
2. 解压安装包:tar -zxvf php-5.2.4.tar.gz
3. 进入解压后的安装包:cd php-5.2.4
4. 配置:./configure --prefix=/usr/local/ webserver/ php 设置PHP5 的安装路径。
--with-apxs2=/usr/local/ webserver/ httpd/bin/apxs 告诉PHP查找Apache 2.0的地方
--with-libxml-dir=/usr/local/src/libxml2 告诉PHP放置libxml2库的地方。(在安装PHP检查是否先安装了libxml套件)
--with-pdo-mysql=/usr/local/ webserver/ mysql 变量激活PDO(PHP数据对象抽象层)
--with-mysql=/usr/local/ webserver/ mysql 变量激活regularMySQL扩展功能。
--with-mysqli=/usr/local/ webserver/ mysql/bin/mysql_config 变量激活新增加的MySQL功能。
--with-config-file-path=/usr/local/ webserver/ php 是php的配置文件php.ini放置的目录
5. 编译:make
6. 安装:make install
7. 转存PHP基本配置文件并命名为php.ini:cp php.ini-dist /usr/local/ webserver/ php/php.ini
最后,重启Apache服务器,测试php是否一切正常工作 可以直接通过PHP程序内置的解析程序来运行一个.php文件。
# /usr/local/ webserver/ php/bin/php -f /var/www/html/phpinfo.php
注 :在我用的CentOS 5.2 的版本中 httpd 是系统默认安装的,编译安装php时通常要指定apxs的位置,这时编译php时会返回错误信息,会找不到路径。 这时只要将 httpd-devel 包装上便可以使用。
# yum install httpd-devel
这时路径为: /usr/sbin/apxs
另其他的配置和目录位于:
# /etc/httpd/conf/httpd.conf
# /etc/httpd/conf.d/*.conf
# /usr/lib/httpd/modules/
# /var/www/html/
# /var/www/error/
# /var/www/icons/
# /var/www/cgi-bin/
# /var/log/httpd/
# /usr/sbin/apachectl
# /usr/sbin/httpd
# /usr/bin/htpasswd
当启动web服务器时 提示:
Starting httpd: httpd: Syntax error on line 206 of /etc/httpd/conf/httpd.conf: Cannot load /usr/lib/httpd/modules/libphp5.so into server: /usr/lib/httpd/modules/libphp5.so: cannot restore segment prot after reloc: Permission denied
原因:如果激活了SELinux ,新内核可能无法安装加载SELIinx
正确处理方法:
方法一 将/etc/selinux/config中设置的SELinux=disabled。之后reboot
编辑/etc/selinux/config,找到这段:
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
SELINUX=enforcing
把 SELINUX=enforcing 注释掉:#SELINUX=enforcing ,然后新加一行为:
SELINUX=disabled
保存,关闭。
编辑/etc/sysconfig/selinux,找到:
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
SELINUX=enforcing
如果SELINUX已经是 SELINUX=disabled,那么就不用改了,否则就把SELINUX=enforcing 注释掉,新加一行:
SELINUX=disabled
保存,退出。
如果碰到其他类似提示:
cannot restore segment prot after reloc: Permission denied
哪应该是SELinux的问题,可以考虑把它关闭。
-------------------------------------------------------------------------------------
如果将 SELinux 关闭后还是不行.执行下
chcon -t texrel_shlib_t
如: chcon -t texrel_shlib_t /usr/lib/httpd/modules/libphp5.so
方法二如果不想禁用SELinux,可安装selinux-policy-targeted-1.25-4.noarch.rpm的高版本。
===================
将apache安装为系统服务
# cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd
然后 vi /etc/rc.d/init.d/httpd 添加(#!/bin/sh下面)
# chkconfig: 2345 50 90
# description: Activates/Deactivates Apache Web Server
最后,运行chkconfig把Apache添加到系统的启动服务组里面:
# chkconfig --add httpd
# chkconfig httpd on
然后再service httpd start
==================
相关链接:
CentOS+Apache+Mysql+Php安装及优化配置小记
CentOS 5.2,Linux 2.6+ 内核 ,Apache+MySQL+PHP 安装及基本配置过程记录 && 将apache安装为系统服务
CentOS 5.3 下编译安装Fcitx(小企鹅输入法)
CentOS 5.3上yum安装Apache+php+Mysql+phpMyAdmin
Linux下Apache2+MySQL5+PHP5安装
linux yum安装mysql后要注意的一些初始化问题
Fedora 8下用Yum安装Apache+PHP+MySQL环境
pthread之线程堆栈
Linux下pthread线程库介绍
Pthread 介绍
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/orzorz/archive/2010/03/07/5353213.aspx[/quote]
环境:本文中的Linux操作系统为CentOS 5.2,Linux 2.6+ 内核 ,Apache+MySQL+PHP 安装及基本配置过程记录下来以供参考:
一. Apache Web服务器的源代码安装,Tarball安装方式:
1. 源码包:httpd-2.2.6.tar.gz 从 www.apache.org 下载到此目录下:/usr/local/src 同时在 /usr/local 下创建一个httpd目录:mkdir httpd
2. 解压安装包:tar -zxvf httpd-2.2.6.tar.gz
3. 进入解压后的安装包:cd httpd-2.2.6
4. 配置:./configure --prefix=/usr/local/webserver/httpd --enable-cgi ( 意义支持CGI)
5. 编译:make
6. 安装:make install
7. 启动web服务:
/usr/local/httpd/bin/apachectl start 或 service httpd start
或者:开机后立即启动web服务
vi /etc/rc.d/rc.local
新加一行
/usr/local/httpd/bin/apachectl start 或 chkconfig --level 345 httpd on
8. 配置Apache服务器
Apache 配制文件及目录是:/usr/local/ webserver/ httpd/conf/httpd.conf
Apache默认存放主页的位置应该是:/usr/local/ webserver/ httpd/apache/htdocs
DocumentRoot "/usr/local/ webserver/ httpd/htdocs" 这个是存放网页的目录,我们应该把网页的目录指定到哪里,这样当访问网址时,就调用这个目录的文件。
<Directory "/opt/apache/htdocs" 这句应该和DocumentRoot 的目录保持一致。
系统自动添加了这一行,如果没有则自己加入这一行。
LoadModule php5_module modules/libphp5.so
找到: DirectoryIndex index.html index.html.var
改为: DirectoryIndex index.html index.html.var index.php
找到: AddType application/x-tar .tgz
添加: AddType application/x-httpd-php .php (注意空格)
这两项配置就是告诉Apache Server,以后收到的Url用户请求,凡是以php作为后缀,就需要调用php5_module模块mod_php5.so/ php5apache2.dll)进行处理。 mod_php 是把PHP做为APACHE一个内置模块。让apache http服务器本身能够支持PHP语言,不需要每一个请求就启动PHP解释器来解释PHP 。
unix/linux 下,so后缀文件是一个DSO文件,DSO与windows系统下的dll是等价概念,都是把一堆函数封装在一个二进制文件中。调用它们的进程把它们装入内存后,会将其映射到自己的地址空间。DSO全称为Dynamic Shared Object,即动态共享对象。DLL全称为Dynamic Link Library 即动态链接库。
注 :对存放网页的目录执行命令:chmod 755 目录名 chmod -R 755 目录名
9. 重启apache服务器:/usr/local/httpd/bin/apachectl restart
二、编译安装MySQL (源码包安装)
1. /usr/sbin/groupadd mysql // 建立mysql组
2. /usr/sbin/useradd -g mysql mysql // 建立mysql用户并且加入到mysql组中
3. tar zxvf mysql-5.1.38.tar.gz
4. cd mysql-5.1.38/
5. ./configure --prefix=/usr/local/webserver/mysql/ --enable-thread-safe-client
6. make && make install
7. cp /usr/local/src/mysql/support-files/my-medium.cnf /etc/my.cnf 在 support-files目录下有4个模版文件,我们选择其中一个Mysql的配置文件,覆盖/etc/my.cnf(系统默认的配置,其中设置了性能参数和Mysql的一些路径参数);
8. cd /usr/local/mysql //进入mysql目录
9. /usr/local/webserver/mysql/bin/mysql_install_db --basedir=/usr/local/webserver/mysql --datadir= /usr/local/webserver/mysql /data --user=mysql //初试化表并且规定用mysql用户来访问。初始化表以后就开始给mysql和root用户设定访问权限;
10. chown -R root . //设定root能访问/usr/local/mysql;
11. chown -R mysql data //设定mysql用户能访问/usr/local/mysql/data ,里面存的是mysql的数据库文件.这个目录是在/etc/my.cnf中有配置,mysql_install_db时产生;
12. chown -R mysql data/. //设定mysql用户能访问/usr/local/mysql/data/mysql下的所有文件;
13. chgrp -R mysql . //(此处 .前面有空格哦)设定mysql组能够访问/usr/local/mysql;
14. /usr/local/mysql/bin/mysqld_safe --user=mysql & //运行mysql;
15. /usr/local/src/mysql/bin/mysqladmin -u root password 'yourpassword' //MYSQL默认安装密码为空,为mysql设置密码,利用的是/usr/local/src/mysql/bin/下的mysqladmin文件;
16. 启动MySQL服务:
cp /usr/local/src/mysql/support-files/mysql.server /etc/init.d/mysql
vi /etc/init.d/mysql
修改如下定义使其内容为:
basedir=/usr/local/webserver/mysql
datadir=/usr/local/webserver/mysql/data
chmod +x mysql //赋予shell脚本可执行权限:
chkconfig --level 345 mysql on
service mysql restart
Shutting down MySQL... [ OK ]
Starting MySQL [ OK ]
17. 连接:
/usr/local/src/mysql/bin/mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5 to server version: 4.1.14-standard
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
三、PHP的源代码安装,Tarball安装方式:
1. 源码包:php-5.2.4.tar.gz,从www.php.net 下载到此目录下:/usr/local/src 同时在/usr/local下创建一个php目录:mkdir php
2. 解压安装包:tar -zxvf php-5.2.4.tar.gz
3. 进入解压后的安装包:cd php-5.2.4
4. 配置:./configure --prefix=/usr/local/ webserver/ php 设置PHP5 的安装路径。
--with-apxs2=/usr/local/ webserver/ httpd/bin/apxs 告诉PHP查找Apache 2.0的地方
--with-libxml-dir=/usr/local/src/libxml2 告诉PHP放置libxml2库的地方。(在安装PHP检查是否先安装了libxml套件)
--with-pdo-mysql=/usr/local/ webserver/ mysql 变量激活PDO(PHP数据对象抽象层)
--with-mysql=/usr/local/ webserver/ mysql 变量激活regularMySQL扩展功能。
--with-mysqli=/usr/local/ webserver/ mysql/bin/mysql_config 变量激活新增加的MySQL功能。
--with-config-file-path=/usr/local/ webserver/ php 是php的配置文件php.ini放置的目录
5. 编译:make
6. 安装:make install
7. 转存PHP基本配置文件并命名为php.ini:cp php.ini-dist /usr/local/ webserver/ php/php.ini
最后,重启Apache服务器,测试php是否一切正常工作 可以直接通过PHP程序内置的解析程序来运行一个.php文件。
# /usr/local/ webserver/ php/bin/php -f /var/www/html/phpinfo.php
注 :在我用的CentOS 5.2 的版本中 httpd 是系统默认安装的,编译安装php时通常要指定apxs的位置,这时编译php时会返回错误信息,会找不到路径。 这时只要将 httpd-devel 包装上便可以使用。
# yum install httpd-devel
这时路径为: /usr/sbin/apxs
另其他的配置和目录位于:
# /etc/httpd/conf/httpd.conf
# /etc/httpd/conf.d/*.conf
# /usr/lib/httpd/modules/
# /var/www/html/
# /var/www/error/
# /var/www/icons/
# /var/www/cgi-bin/
# /var/log/httpd/
# /usr/sbin/apachectl
# /usr/sbin/httpd
# /usr/bin/htpasswd
当启动web服务器时 提示:
Starting httpd: httpd: Syntax error on line 206 of /etc/httpd/conf/httpd.conf: Cannot load /usr/lib/httpd/modules/libphp5.so into server: /usr/lib/httpd/modules/libphp5.so: cannot restore segment prot after reloc: Permission denied
原因:如果激活了SELinux ,新内核可能无法安装加载SELIinx
正确处理方法:
方法一 将/etc/selinux/config中设置的SELinux=disabled。之后reboot
编辑/etc/selinux/config,找到这段:
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
SELINUX=enforcing
把 SELINUX=enforcing 注释掉:#SELINUX=enforcing ,然后新加一行为:
SELINUX=disabled
保存,关闭。
编辑/etc/sysconfig/selinux,找到:
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
SELINUX=enforcing
如果SELINUX已经是 SELINUX=disabled,那么就不用改了,否则就把SELINUX=enforcing 注释掉,新加一行:
SELINUX=disabled
保存,退出。
如果碰到其他类似提示:
cannot restore segment prot after reloc: Permission denied
哪应该是SELinux的问题,可以考虑把它关闭。
-------------------------------------------------------------------------------------
如果将 SELinux 关闭后还是不行.执行下
chcon -t texrel_shlib_t
如: chcon -t texrel_shlib_t /usr/lib/httpd/modules/libphp5.so
方法二如果不想禁用SELinux,可安装selinux-policy-targeted-1.25-4.noarch.rpm的高版本。
===================
将apache安装为系统服务
# cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd
然后 vi /etc/rc.d/init.d/httpd 添加(#!/bin/sh下面)
# chkconfig: 2345 50 90
# description: Activates/Deactivates Apache Web Server
最后,运行chkconfig把Apache添加到系统的启动服务组里面:
# chkconfig --add httpd
# chkconfig httpd on
然后再service httpd start
==================
相关链接:
CentOS+Apache+Mysql+Php安装及优化配置小记
CentOS 5.2,Linux 2.6+ 内核 ,Apache+MySQL+PHP 安装及基本配置过程记录 && 将apache安装为系统服务
CentOS 5.3 下编译安装Fcitx(小企鹅输入法)
CentOS 5.3上yum安装Apache+php+Mysql+phpMyAdmin
Linux下Apache2+MySQL5+PHP5安装
linux yum安装mysql后要注意的一些初始化问题
Fedora 8下用Yum安装Apache+PHP+MySQL环境
pthread之线程堆栈
Linux下pthread线程库介绍
Pthread 介绍
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/orzorz/archive/2010/03/07/5353213.aspx[/quote]