配置apache

1. 修改httpd.conf文件

# vi  /usr/local/apache/conf/httpd.conf

1) 设置根目录的路径

根目录是指Apache存放配置文件和日志文件的目录,配置参数为ServerRoot,默认位于“/usr/local/apache”。命令如下:

ServerRoot /usr/local/apache

2) 设置监听IP地址及端口号

默认侦听本机所有IP地址的TCP80端口,命令如下:

Listen 80

用户也可以按自己的需求,使用多个Listen语句在多个地址和端口上侦听客户端请求。比如:

Listen 192.168.99.9:80

Listen 172.16.0.20:8080

3) 设置系统管理员E-mail

使用ServerAdmin参数设置管理员E-mail,比如管理员的Email地址为[email protected]:

ServerAdmin [email protected]

4) 设置服务器主机的名称

参数ServerName用来设置服务器的主机名称,如果没有域名则填入服务器的IP地址,比如服务器的IP地址为192.168.99.9:80

ServerName 192.168.99.9:80

5) 设置主目录的路径

用户可以使用参数DocumentRoot配置服务器主目录默认路径,比如,主目录路径为:

DocumentRoot /usr/local/apache/htdocs

6) 设置默认文件

Apache的默认文件名为index.html,可以使用Directory Index参数来配置,比如,将index.php设置为默认文件名:

<IfModulf dir_moudle>

Directory Index index.html

</IfModulf>

7)测试:

打开浏览器,输入地址:http://192.168.99.9,可以打开站点了:

2. 配置目录权限

使用<Directory 目录路径>和</Directory>设置目录的权限。比如:

<Directory  “/var/www/icons”>

Options  Indexes  MultiViews

AllowOverride  None

Order  allow,deny

Allow  from  all

</Directory>

说明:

1)定义目录特性选项Options

可选参数:

Indexes:该特性表明目录允许“目录浏览”;

MultiViews:该特性表明目录允许内容协商的多重试图;

All:包含了除MultiViews外的所有特性;

ExecCGI:该特性表明允许在该目录下执行CGI脚本;

FollowSymLinks:该特性表明允许在该目录下使用符号连接。

2).htaccess文件

可以通过.htaccess文件(访问控制文件)设置目录的权限。

AccessFileName  .htaccess

配置参数AllowOverride指定目录的.htaccess文件中指令的类型,包括All、None与Options、FileInfo、AuthConfig、Limit的任意组合。一般将AllowOverride设置为“None”,禁止使用.htaccess文件,当AllowOverride参数为All时,.htaccess文件可以覆盖任何以前的配置。

3)设置访问控制

使用Order选项来定义访问权限。

比如以下语句表明允许所有客户机的访问:

Order  allow,deny

Allow  from  all

以下语句表明只允许网段192.168.99.0/24的客户机访问,但IP地址为192.168.99.254这个客户机除外:

Order  allow,deny

Allow from  192.168.99.0/24

Deny from  192.168.99.254

用户可以根据需要,按上述方法配置自己的目录权限。

3. 创建虚拟目录

使用Alias选项创建虚拟目录,比如,建立“/icons/”这个虚拟目录,其对应的物理路径为“/var/www/icons/”:

Alias  /icons/  “/var/www/icons/”

4. 用户认证

比如,有一个名为myweb的虚拟目录,其对应的物理路径是“/usr/local/myweb”,现对其启用用户认证功能,只允许用户Tonyguo和Wayne访问。

1)建立虚拟目录并设置用户认证:

2) 建立口令文件并为用户设置口令

-c选项表示无论口令文件是否已经存在,都会重新写入文件并删除原内容。所以第二个用户wayne不需要使用-c选项。

3)测试

在浏览器中输入:http://192.168.99.9/myweb,可以看到如下对话框:

输入用户名和密码后就可以访问网站了:

三、配置虚拟主机

1. 配置基于IP的虚拟主机

1)IP地址相同,但端口号不同的虚拟主机配置

比如使用192.168.99.9的两个不同端口80和8080发布两个不同站点, 虚拟主机分别对应的目录为/usr/local/apache/htdocs/web1和/usr/local/apache/htdocs/web2:

Listen 80

Listen 8080

<VirtualHost  192.168.99.9:80>

ServerSignature  email

DocumentRoot  /usr/local/apache/htdocs/web1

DirectoryIndex  index.html  index.htm

LogLevel  warm

HostNameLookups  off

</VirtualHost>

<VirtualHost  192.168.99.9:8080>

ServerSignature  email

DocumentRoot  /usr/local/apache/htdocs/web2

DirectoryIndex  index.html  index.htm

LogLevel  warm

HostNameLookups  off

</VirtualHost>

2)配置基于域名的虚拟主机

比如服务器有两个IP地址192.168.99.9和192.168.99.10,使用这两个IP创建两台虚拟主机,虚拟主机分别对应的目录为/usr/local/apache/htdocs/web1和/usr/local/apache/htdocs/web2。设置方法如下:

<VirtualHost  192.168.99.9>

ServerName  192.168.99.9:80

DocumentRoot  /usr/local/apache/htdocs/web1

DirectoryIndex  index.html  index.htm

</VirtualHost>

<VirtualHost  192.168.99.10>

ServerName  192.168.99.10:80

DocumentRoot  /usr/local/apache/htdocs/web2

DirectoryIndex  index.html  index.htm

</VirtualHost>

2. 配置基于域名的虚拟主机

比如有两个域名guoxuemin.cn和tonyguo.com需要使用同一台服务器192.168.99.9,那么可以这样配置:

NameVirtualHost  192.168.99.9

<VirtualHost  www.guoxuemin.cn>

ServerName  www.guoxuemin.cn:80

ServerAdmin  [email protected]

DocumentRoot  /usr/local/apache/htdocs/web1

DirectoryIndex  index.html  index.htm

ErrorLog  logs/web1/error_log

Customlog  logs/web1/access_log  combined

</VirtualHost>

<VirtualHost  www.tonyguo.com>

ServerName  www.tonyguo.com:80

ServerAdmin  [email protected]

DocumentRoot  /usr/local/apache/htdocs/web2

DirectoryIndex  index.html  index.htm

ErrorLog  logs/web1/error_log

Customlog  logs/web1/access_log  combined

</VirtualHost>

时间: 2024-10-11 03:43:14

配置apache的相关文章

Linux下安装配置Apache服务器

Linux下安装配置Apache服务器 1. 安装Apache [[email protected] ~]# yum –y install httpd 2. 启动Apache [[email protected] ~]# systemctl start httpd 3. 查看进程 [[email protected] ~]# systemctl status httpd httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib

openSUSE下配置Apache开启重写模块

这几天刚重装了系统,需要进行一大堆配置,笔者是一名LAMPer,当然要配置apache+php+mysql了,我用的发行版是opensuse13.1,. 安装好apache后,需要开启URL重写功能以配合项目的开发.打开apache的配置文件/etc/apache2/httpd.conf,找到AllowOverride None,改成AllowOverride ALL,再找到Option None改为Option FollowSymLinks .这样还不行,还要加载Rewrite模块. Rewr

Ubuntu14.04配置Apache支持多个站点

怎样在一个Ubuntu的机器上(虚拟机)配置Apache支持多个网站呢? 比如你有一台独立的Ubuntu虚拟机,配有一个外网的IP(45.46.47.48),并且注册了两个域名AAA.com和BBB.com,将这两个域名DNS解析到你虚机的IP地址.假设你已经安装好了Apache,一切都是默认的设置. 我们需要在这一个server上面,同时host AAA.com,BBB.com 第一步:修改hosts文件 在Ubuntu系统中,hosts文件目录为/etc/hosts,可以用vi编辑 sudo

ZABBIX企业监控实践(2):升级与配置Apache

前面我们完成了ZABBIX环境的安装,在实际项目中,出于安全漏洞或者性能优化方面的考虑,需要升级到最新版本.我们首先对Apache进行升级. 一.准备安装过程 如果已经安装的Apache是通过yum安装,升级前先删除旧版本: 备份httpd.conf配置文件 # cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.bak 卸载旧版本Apache: #service httpd stop #yum remove -y httpd* 注:

CentOS 7安装配置Apache HTTP Server

原文 CentOS 7安装配置Apache HTTP Server   RPM安装httpd # yum -yinstall httpd //安装httpd会自动安装一下依赖包: apr apr-util httpd-tools mailcap # rpm -qi httpd Name      : httpd Version    : 2.4.6 Release    : 18.el7.centos Architecture: x86_64 Install Date: Mon 11 Aug 2

Mac OS X 10.10 Yosemite下配置 apache+php

自从系统从OS X Mavericks 10.9升级到OS X Yosemite 10.10 后之前配置apache和php均不能正常使用了, 重新设置配置如下: 首先,查看当前系统的apache版本,终端下输入:httpd -v Apache/2.4.0 1. 启动Apache 服务      sudo apachectl start      打开safari,访问:http://localhost,显示“It works!”表示Apache启动正常 当前访问的是Apache的默认目录,/L

Centos7安装配置Apache+PHP+Mysql+phpmyadmin

转载自: Centos7安装配置Apache+PHP+Mysql+phpmyadmin 一.安装Apache yum install httpd 安装成功后,Apache操作命令: systemctl start httpd //启动apache systemctl stop httpd //停止apache systemctl restart httpd //重启apache systemctl enable httpd //设置apache开机启动 异常处理我再阿里云上配置并出现启动Apac

Ubuntu下配置apache开启https

一.HTTPS简述随着网络的日常,信息安全越来越重要,传统的网站都是http协议明文传输,而HTTPS协议是由SSL+HTTP协议构建的可进行加密传输.身份认证的网络协议,比http协议安全. 那https到底是怎么开启的,随着疑问自己也了解https配置原理并在Ubuntu服务器上开启了https. 二.配置证书 配置https一个很重要的步骤就是配置证书. 1.创建证书 sudo apt-get install ssl-cert make-ssl-cert生成证书的方法有两种,一种是根据生成

Linux下安装配置Apache+PHP+MariaDB

一.安装apache 1.下载并安装apache yum install httpd 2.启动apache systemctl start httpd.service 3.停止apache systemctl stop httpd.service 4.重启apache systemctl restart httpd.service 5.将apache设置为开机启动 systemctl enable httpd.service 二.安装php 1.下载php yum install php 2.安

在Mac OS X 10.8中配置Apache + PHP + MySQL

在Mac OS X 10.8中配置Apache+PHP+MySQL的内容包括: 配置Apache 配置PHP 安装MySQL 配置PHPAdmin 设置数据库默认字符集 一. 配置Apache 1. 启动Apache 打开终端,输入: sudo apachectl start 打开浏览器,输入: http://localhost 应该可以看到”It works!“的页面,该页面位于/Library/WebServer/Documents/目录下,这是Apache的默认根目录. 2. 配置用户访问