Linux 5.4下Apache高级配置 学习笔记

目标:1、搭建LAMP环境(基于rpm包)并安装论坛

      2、个人主页设置及用户认证

        3、用别名实现网站目录转换 

 

 

 

1、IP说明:

 

192.168.1.6——主机名:apache.wqmsl.com  apache服务器

192.168.1.4——主机名:dns.wqmsl.com  dns客户端

2、前期准备

  更改主机名称(更改三处):1、hostname更改,2、hosts更改,3、/etc/sysconfig/network

3、所需软件包如下

(1)MySQL安装

perl-DBI-1.52-1.fc6.i386.rpm 
perl-DBD-MySQL-3.0007-1.fc6.i386.rpm 
mysql-5.0.22-2.1.0.1.i386.rpm 
mysql-server-5.0.22-2.1.0.1.i386.rpm 
mysql-devel-5.0.22-2.1.0.1.i386.rpm

(2)PHP安装

php-5.1.6-15.el5.i386.rpm 
php-cli-5.1.6-15.el5.i386.rpm 
php-common-5.1.6-15.el5.i386.rpm 
php-mysql-5.1.6-15.el5.i386.rpm 
php-pdo-5.1.6-15.el5.i386.rpm

(3)httpd安装

httpd-2.26

一、下面我们实现第一个实验目标,搭建LAMP环境(基于rpm包)并安装论坛

我选择用yum安装,先来安装mysql相关

安装mysql-5.0.22-2.1.0.1.i386.rpm 的时候自动解决对perl-DBI-1.52-1.fc6.i386.rpm 的依赖性

Linux 5.4下Apache高级配置 学习笔记

Linux 5.4下Apache高级配置 学习笔记

安装mysql-server-5.0.22-2.1.0.1.i386.rpm 的时候自动解决对mysql-server-5.0.22-2.1.0.1.i386.rpm 的依赖性

Linux 5.4下Apache高级配置 学习笔记

最后安装mysql-devel-5.0.22-2.1.0.1.i386.rpm

Linux 5.4下Apache高级配置 学习笔记

我们启动mysql看看

Linux 5.4下Apache高级配置 学习笔记

Linux 5.4下Apache高级配置 学习笔记

启动成功,设置MySQL的root用户密码

Linux 5.4下Apache高级配置 学习笔记

mysqladmin -u root password 123456 ——》设置密码

mysql -u root -p ——》使用root用户登陆MySQL数据库

创建我们需要的数据库,可以看到我创建的bbs的数据库已经成功

Linux 5.4下Apache高级配置 学习笔记

使用exit退出

第二步去安装PHP所需要的rpm包,默认系统已经安装php-5.1.6-15.el5.i386.rpm 、
php-cli-5.1.6-15.el5.i386.rpm 、php-common-5.1.6-15.el5.i386.rpm 这三个了

Linux 5.4下Apache高级配置 学习笔记

安装php-mysql-5.1.6-15.el5.i386.rpm 的时候自动解决所依赖的包php-pdo-5.1.6-15.el5.i386.rpm

Linux 5.4下Apache高级配置 学习笔记

这样PHP就算安装完成了

第三部分去安装httpd服务(默认已经安装),如果没有安装则通过yum install httpd安装就OK了

Linux 5.4下Apache高级配置 学习笔记

配置Apache的配置文件

配置管理员邮箱和监听地址和端口

Linux 5.4下Apache高级配置 学习笔记

配置网页存放的目录

Linux 5.4下Apache高级配置 学习笔记

同时修改(需要和上面的一致)

Linux 5.4下Apache高级配置 学习笔记

修改首页文档,添加PHP的首页文档

Linux 5.4下Apache高级配置 学习笔记

保存并退出

创建网页存放的目录,并给予权限

Linux 5.4下Apache高级配置 学习笔记

Linux 5.4下Apache高级配置 学习笔记

启动httpd服务

Linux 5.4下Apache高级配置 学习笔记

写一个PHP的测试网页,测试一下是否安装成功

Linux 5.4下Apache高级配置 学习笔记

在客户端使用浏览器打开服务器的IP或者域名进行测试

以下是我打开的内容

PHP的相关信息

Linux 5.4下Apache高级配置 学习笔记

Apache的相关信息

Linux 5.4下Apache高级配置 学习笔记

MySQL的相关信息

Linux 5.4下Apache高级配置 学习笔记

Mysqli的相关信息

Linux 5.4下Apache高级配置 学习笔记

这样有这些内容,那么你的LAMP可以确定是安装成功了

下面我们来安装一个论坛程序吧

这是我下载的一个PHP的论坛程序,语言是UTF-8的(Apache默认是UTF-8)

Linux 5.4下Apache高级配置 学习笔记

也有GB2312的,那么你就得修改一下httpd.conf配置文件的语言了,这个在常规配置里面讲过了

上传upload里面的所有文件到你的服务器存放网页的目录下(可以使用winSCP上传,实际环境是FTP)

Linux 5.4下Apache高级配置 学习笔记

上传完成后用浏览器打开

Linux 5.4下Apache高级配置 学习笔记

点击开始安装

按照提示��有的文件需要777的权限,你依个设置权限就行,否则无法安装

填写基本的信息,例如:数据库的密码等

Linux 5.4下Apache高级配置 学习笔记

然后是安装的详细信息输出,创建数据库等

Linux 5.4下Apache高级配置 学习笔记

最后点击完成就OK了

Linux 5.4下Apache高级配置 学习笔记

我们来欣赏一下自己安装的论坛吧

前台页面

Linux 5.4下Apache高级配置 学习笔记

后台登陆界面

Linux 5.4下Apache高级配置 学习笔记

后台管理界面

Linux 5.4下Apache高级配置 学习笔记

好了,已经安装完成了

大家也可以试试使用源码安装,其实差不多了

二、个人主页的设置

  编辑Apache的配置文件,开启用户个人主页的设置

Linux 5.4下Apache高级配置 学习笔记

注释掉这行: UserDir disable

删除这行UserDir public_html前面的#

到用户的家目录下面创建public_html目录,设置权限

Linux 5.4下Apache高级配置 学习笔记

在public_html目录里面创建用户的首页

Linux 5.4下Apache高级配置 学习笔记

我们去浏览器测试一下(http://域名或者IP/~username/)

Linux 5.4下Apache高级配置 学习笔记

这样一个用户的个人主页就设置完成了

下面我们配置basic基本认证,基于用户名和密码

我们使用比较灵活的一种认证配置方式,使用基于目录的认证,把认证文件放在用户可以管理的主业目录内,这样用户就可以随意修改了

我们就为LAMP安装好的bbs论坛做用户认证吧

添加论坛所在目录权限设置,在

Linux 5.4下Apache高级配置 学习笔记

下面添加如下内容,对网页目录设置权限,开启basic用户认证:

Linux 5.4下Apache高级配置 学习笔记

保存退出

到网页目录下进行配置认证文件

Linux 5.4下Apache高级配置 学习笔记

注意:.htaccess 前面有“.”,是一个隐藏文件

内容解释:

<>里面是目录

Authtype 是认证类型 Basic apache自带的基本认证

Authname  认证名字,是提示你输入密码的对话框的提示语

Authuserfile  是存放认证用户的文件

require user  允许指定的一个或多个用户访问,就是后面跟的redking用户

如果认证文件里面还有其他用户,还是不能访问

require valid-user  的话,就是所有认证文件里面的用户都可以访问

require group 授权给一个组,这个参数很少用

生成htpasswd文件并在htpasswd中添加用户数据

Linux 5.4下Apache高级配置 学习笔记

注意:-c就是创建bbs.htpasswd这个文件,最后的bbs则是要添加到bbs.htpasswd里的用户,bbs是系统用户,我提前已经建立好了bbs这个系统用户了

你也可以添加其他的用户,例如我再添加一个www的用户:

Linux 5.4下Apache高级配置 学习笔记

注意:因为bbs.htpasswd这个文件已经存在,所以我们在这个添加用户的语句中不需要再添加-c的参数,然后提示你输入密码

看看bbs.htpasswd的内容

Linux 5.4下Apache高级配置 学习笔记

可以看到添加的用户的信息

下面我们重新启动服务

Linux 5.4下Apache高级配置 学习笔记

访问进行测试

Linux 5.4下Apache高级配置 学习笔记

Linux 5.4下Apache高级配置 学习笔记

这样就成功的配置好了基于用户的认证

为了让大家更加了解,我们再来设置一个,就是对第二个实验目标里面的用户的主页配置认证

和上面一样添加网页目录的权限配置

Linux 5.4下Apache高级配置 学习笔记

到用户主页目录下配置认证文件,内容我已经配置好了

Linux 5.4下Apache高级配置 学习笔记

然后生成htpasswd文件并在htpasswd中添加用户数据

Linux 5.4下Apache高级配置 学习笔记

重新启动服务,访问test用户主页进行测试

Linux 5.4下Apache高级配置 学习笔记

看,可以访问到了哈...

Linux 5.4下Apache高级配置 学习笔记

哇塞,这个这么多,终于写完了哈,下面实现别名配置

二、实现第三个目标,就是使用别名实现网站目录转换

下面我们来配置,搜索Alias,在默认539行下面添加“Alias /test  "/home/test/public_html/" ”

这行,Alias /test:是别名的名称, "/home/test/public_html/" :是真实网站目录的位置,Directory是对你真是目录的权限设置。

Linux 5.4下Apache高级配置 学习笔记

修改完后保持并重启服务,我们来测试一下,访问看一下结果哈

Linux 5.4下Apache高级配置 学习笔记

注意:浏览器输入:http://域名或者IP/别名的名称

别名的设置完成,

 

 

假如大家使用编译安装apache启动服务的时候肯能会出现的问题:
提示错误:
make_sock:could not bind to address 0.0.0.0:80
no listening sockets  available,shutting down
Unable to open logs
解决方法:
出现这个问题,是因为APACHE的默认端口被占用的缘故.解决方法就是把这个端口占用的程序占用的端口去掉.或者改换APACHE的占用端口.
APACHE的端口当然好解决.直接改配置文件就行了.现在我们就说说如何改其它文件占用APACHE默认端口80
首先,查看是哪个程序占用了端口.方法是:

1.netstat -lnp|grep 80

tcp        0      0 192.168.1.6:61027        0.0.0.0:*          LISTEN      6289/oproxyd       
tcp        0      0 :::80                    :::*                LISTEN      846/httpd         
tcp        0      0 ::ffff:192.168.180.68:7001  :::*            LISTEN      32015/java       

找到pid 846

#ps 846  查看

#kill -9 846  杀掉

重新启动你的服务就OK了