第四讲Apache+LAMP服务器基本配置
Apache的编译安装
从Apache的官方网站下载源码包:
今天讲课用的源码包文件是:httpd-2.0.59.tar.gz
编译安装需要系统中具备gcc等编译工具,可使用图形界面的软件包管理程序安装完整的编译环境:
#system-config-packages
 
下面先讲rpm安装的情况:
#rpm –q httpd
//系统已经安装
#vi /var/www/html/index.html
<html>
welcome to xapc’ web pages!
</html>
在windows中可以访问它了:http://192.168.2.101
httpd.conf 配置文件
注释行以#号开始
httpd.conf文件中的大多数配置是包括在区域中的:
<Directory />    //定义根区域的开始
</ Directory>    //定义根区域的结束
 
建立系统用户的个人主页,每个用户都可以有自己的主页:
UserDir public_html     //用户在自己的主目录下的public_html目录下建的主页才能够提供对外访问
$ chmod o+x ~     //用户宿主目录需高设置为其他用户可以进入
$ mkdir public_html     //在用户宿主目录中建立public_html目录。然后在这个目录中建立index.html文件
访问用户个人主页:
http://服务器IP/~用户名/
 
httpd.conf中对日志文件的设置:
ErrorLog logs/error_log
CustomLog logs/access_log common     // common代表日志是普通格式
 
访问日志文件:
/usr/local/apache2/logs/access_log
错误日志文件:
/usr/local/apache2/logs/error_log
 
演示apache的基本配置:
#vi /etc/httpd/conf/httpd.conf
### Section 1: Global Environment      //第一部分:全局环境设置
LoadModule actions_module modules/mod_actions.so    //加载的模块. actions_module是模块的名字,modules/mod_actions.so是模块的软件
 
### Section 2: ‘Main’ server configuration     //第二部分,主服务器的配置
删除UserDir public_html前面的#号,启用用启个人主页
在UserDir disable 前面加#号,注释掉它。
#useradd zhang3
#passwd zhang3
#logout    然后用zhang3去登陆
$mkdir public_html
$ll . –d     //.代表当前目录。查看这个目录的权限,发现别人是访问不了的。
$chmod o+x .     //o是其他用户,x 是访问权限
$cd public_html/
$vi index.html
welcome to zhang3’ homepages!
#service httpd restart
访问zhang3的个人主页:
注:如果出现403错误的提示,请进行如下设置:
#vi /etc/selinux/config
SELINUX=disabled     //把这项禁用
#reboot    //要重新启动
 
下面来配置虚拟主机
#vi /etc/httpd/conf/httpd.conf
 
### Section 3: Virtual Hosts    //第三部分,虚拟主机
它里面给了一个案例,我们只要改动就行了
首先设置虚拟主机的IP,我们把#NameVirtualHost *:80复制一下,再修改:
NameVirtualHost 192.168.2.101:80
复制#<VirtualHost *:80>      #</VirtualHost> 这部分内容二份,修改为以下内容:
 
#cd /var/www/html
#mkdir xapc.com pcgj.com
#cd xapc.com
#echo “This is xapc homepage.” > index.html
#cd ../pcgj.com/
# echo “This is pcgj homepage.” > index.html
然后检查一下权限:#ll . –d
只要有读的权限就行了
#service httpd restart
 
下面来讲解编译安装Apache
#rpm –qa | grep gcc    //检查编译环境
如果没有安装,怎么办?进入图形界面,打开终端,输入system-config-packages打开图形界面,在“开发”部分找到,然后安装
#cp /media/cdrom/httpd-2.0.59.tar.gz /usr/local/src      //源代码安装的,一般把它拷贝到/usr/local/src目录下
#cd /usr/local/src
#tar zxvf httpd-2.0.59.tar.gz
#ll
可以看到当前目录下多了个httpd-2.0.59文件夹
#cd httpd-2.0.59
# ./configure --prefix=/usr/local/apache2 --enable-so --enable-rewrite
// --prefix选项指定是安装路径,–enable选项是让其支持so(动态加载模块)。这是编译前的配置工作。
#make      //编译
#make install      //安装
 
#/usr/local/apache2/bin/apachectl start     //启动httpd服务程序
发现出现提示,80端口占用,(因为上个实验中,rpm方式安装了apache,并配置了启用它)
#service httpd stop
#/usr/local/apache2/bin/apachectl start
 
#cd /usr/local/apache2/htdocs
#touch index.html
#vi index.html
输入welcom to this test page.
 
测试
 
LAMP网页应用架构
LAMP的组成:
Linux作为操作系统, Apache作为Web服务器, MySQL作为数据库服务器, PHP/Perl/Python作为编程语言
 
安装并管理MySQL
可从 下载mysql软件包
#tar zxvf /media/cdrom/mysql-3.23.58-pc-linux-i686.tar.gz –C /usr/local
//-C指定要释放的目录。可以运行的应用程序一般释放到/usr/local/目录下
#useradd mysql     //添加用户和组。创建用用户后建立同名的组
#ln –s mysql- mysql-3.23.58-pc-linux-i686/ mysql    //建立mysql-3.23.58-pc-linux-i686这个目录的软链接,相当于快捷方式。因为这个目录太长了不好记。
#cd mysql       //注意以下操作的当前目录是/usr/local/mysql
#cp support-file/my-medium.cnf /etc/my.cnf    //拷贝mysql的配置文件. my-medium.cnf代表中型的数据库文件。
# ./scripts/mysql_install_db     //初始化mysql数据库
#chown –R root .    //把当前目录下的所有文件及子目录的属主改成为root用户,-R递归
#chown –R mysql data    //把data目录及其下面的子目录的属主改为mysql用户
#chgrp –R mysql .    //把当前目录及子目录的属组改为mysql组
//注意顺序,先初始化,再来改目录的属主和属组。否则出错
# ./bin/safe_mysqld - - user=mysql & //以用户mysql身份后台运行mysql.
#bin/mysqladmin –u root password ‘123’     //设置数据库管理员用户口令
#bin/mysql –u root –p  //以数据库管理员身份登陆数据库
 mysql>show databases;
 
 安装并管理PHP环境
 #vi /usr/local/apache2/conf/httpd.conf
下面测试一下:
#/cd /usr/local/apache2/htdocs/    
#vi index.php
<?php
phpinfo();     //这个函数显示的是php的信息
?>
windows下