王朝百科
分享
 
 
 

apache2

王朝百科·作者佚名  2010-05-12  
宽屏版  字体: |||超大  

Apache介绍Apache软件基金会(ASF)是一个非营利性组织,它为Apache社区的开源软件项目提供支持。

1995年,美国国家计算机安全协会(NCSA)的开发者创建了NCSZ全球网络服务软件,其最大的特点是HTTP守护进程,它比当时的CERN服务器更容易由源码来配置和创建,又由于当时其他服务器软件的缺乏,他很快流行起来。但是后来,该服务器的核心开发人员几乎都离开了NCSA,一些使用者们自己成立了一个组织来管理他们编写的补丁,于是Apache Group应运而生。他们把该服务器软件称为Apache。Apache源于A patchy server的读音,意思是充满补丁的服务器。如今Apache慢慢地已经成为Internet上最流行的Web服务器软件了。在所有的Web服务器软件中,Apache占据绝对优势,远远领先排名第二的Microsoft IIS。如果你对它感兴趣,你可以访问Apache的官方网站:http://www.apache.org。Apache作为自由软件之一,像其他自由软件一样,他们都是由许许多多的自由开发人员投入了大量的时间和精力来实现并逐步完善的,所以我们有理由相信Apache的发展前景会更好。

Apache 版本介绍现在Apache HTTP 存在三种版本, 1.3 2.0 和2.2

Apache 1.3新的功能:

http://httpd.apache.org/docs/1.3/new_features_1_3.html.

Apache 2.0新的功能:

http://httpd.apache.org/docs/2.0/new_features_2_0.html.

Apache 2.2新的功能:

http://httpd.apache.org/docs/2.2/new_features_2_2.html.

在它的1.X版本年代,虽然Apache已经足够稳定和强大并取得了举足轻重的地位,但仍然存在着它无法覆盖的区域而让一些非全功能型的WEB服务器取得了市场。在2.X中这一情况得到了很大的改善,编译和安装也变得简单了些,Apache使用了标准GNU自动设置工具,对于Windows平台,它也提供了图形化的安装界面。在设置方面,新版本去掉了一些易让人糊涂的指示符号,不过大部分工作仍然基于一个文件的设置文件。对那些习惯图形界面设置工具的用户可能有点麻烦。设置工具与核心的发布包是分离的,一些类似ApacheConf可以免费或以很低的价格的获取,利用这些工具可以很方便的对Apache进行各种设置。

从运行的角度看,Apache2.X版本比老版本更加强大,更具可扩展性。一个多线程/多进程的混合模块使它可以充分利用各种规模的主机性能(从一台只运行小型站点的典型X86服务器到同时运行多个虚拟实例的大型主机),这正是Apache1.3所缺乏的。新版本以插件的形式提供了对一些特定平台和几个通用模块的支持。对IPV6的官方支持已经为互联网的升级做好了准备,对HTTP1.1的支持提高了代理服务器的性能。

另外新版本的核心发布包中增加了几个加强安全和可管理性的模块:mod_auth_ldap引入了基于LDAP(Lightweight Directory Access Protocol)认证,mod_autoindex模块可以很方便的生成目录列表供访问者使用,而mod_deflate模块允许内容在发送前先进行压缩以节约带宽。

考虑到稳定性和扩展性, 本文中使用的是 Apache 2.0

Apache 的安装Apache 的安装无外乎两种方式: 源代码安装和DEB包安装。这两种安装类型各有特色,DEB包安装不需要编译,而源代码安装则需要先配置编译再安装,DEB包安装在一个固定的位置下,选择固定的模块,而源代码安装则可以让你选择安装路径,选择你想要的模块。本文主要介绍DEB安装方式。

系统:GNU/Linux Debian/etch

Apache当前版本: 2.0.55-4

4.1 1. 安装:

使用以下命令安装:

tony@tonybox:~$sudo aptitude update

tony@tonybox:~$sudo aptitude install apache2 apache2-utils

其中apache2-utils提供了我们在配置维护过程中非常有用的一些工具

安装完成后,可以使用下面的命令启动Apache 服务:

tony@tonybox:~$ sudo /etc/init.d/apache2 start

停止Apache服务则是:

tony@tonybox:~$ sudo /etc/init.d/apache2 stop

也可以只接用 kill 命令强制杀死apache2进程

tony@tonybox:~$ sudo killall apache2

如有需要, 可以通过rcconf来控制是否在系统启动是加载Apache 服务

启动完成后打开浏览器, 使用URL http://localhost/ 来访问已经启动的Apache服务器, 服务器将会将会跳转到 http://localhost/apache2-default/, 向浏览器返回一个Apache安装成功的页面.

注: 这取决于/etc/apache2/sites-available/default 配置文件中, 是否取消了

RedirectMatch ^/$ /apache2-default/

行的注释

4.2 2. 配置文件说明

在Debian下, 安装完成后, 软件包为我们提供的配置文件位于/etc/apache2目录下:

tony@tonybox:/etc/apache2$ ls -l

total 72

-rw-r--r-- 1 root root 12482 2006-01-16 18:15 apache2.conf

drwxr-xr-x 2 root root 4096 2006-06-30 13:56 conf.d

-rw-r--r-- 1 root root 748 2006-01-16 18:05 envvars

-rw-r--r-- 1 root root 268 2006-06-30 13:56 httpd.conf

-rw-r--r-- 1 root root 12441 2006-01-16 18:15 magic

drwxr-xr-x 2 root root 4096 2006-06-30 13:56 mods-available

drwxr-xr-x 2 root root 4096 2006-06-30 13:56 mods-enabled

-rw-r--r-- 1 root root 10 2006-06-30 13:56 ports.conf

-rw-r--r-- 1 root root 2266 2006-01-16 18:15 README

drwxr-xr-x 2 root root 4096 2006-06-30 13:56 sites-available

drwxr-xr-x 2 root root 4096 2006-06-30 13:56 sites-enabled

drwxr-xr-x 2 root root 4096 2006-01-16 18:15 ssl

其中

apache2.conf

为apache2服务器的主配置文件, 查看此配置文件, 你会发现以下内容

# Include module configuration:

Include /etc/apache2/mods-enabled/*.load

Include /etc/apache2/mods-enabled/*.conf

# Include all the user configurations:

Include /etc/apache2/httpd.conf

# Include ports listing

Include /etc/apache2/ports.conf

# Include generic snippets of statements

Include /etc/apache2/conf.d/[^.#]*

有此可见, apache2 根据配置功能的不同, 对配置文件进行了分割, 这样更利于管理

conf.d

下为配置文件的附加片断,默认情况下, 仅提供了 charset 片断,

tony@tonybox:/etc/apache2/conf.d$ cat charset

AddDefaultCharset UTF-8

如有需要我们可以将默认编码修改为 GB2312, 即文件的内容为: AddDefaultCharset GB2312

httpd.conf

是个空文件

magic

文件中包含的是有关mod_mime_magic模块的数据, 一般不需要修改它.

ports.conf

则为服务器监听IP和端口设置的配置文件,

tony@tonybox:/etc/apache2$ cat ports.conf

Listen 80

mods-available

目录下是一些.conf和.load 文件, 为系统中可以使用的加载各种模块的配置文件, 而mods-enabled目录下则是指向这些配置文件的符号连接, 从配置文件apache2.conf 中可以看出, 系统通过mods-enabled目录来加载模块, 也就是说, 系统仅通过在此目录下创建了符号连接的mods-available 目录下的配置文件来加载模块。同时系统还提供了两个命令 a2enmod 和 a2dismod用于维护这些符号连接。这两个命令由 apache2-common 包提供。命令各式也非常简单: a2enmod [module] 或 a2dismod [module]

sites-available

目录下为配置好的站点的配置文件, sites-enabled 目录下则是指向这些配置文件的符号连接, 系统通过这些符号连接来起用站点 sites-enabled目录下的符号连接附有一个数字前缀, 如000-default, 这个数字用于决定启动顺序, 数字越小, 启动优先级越高. 系统提供了两个命令 a2ensite 和 a2dissite 用于维护这些符号连接。这两个命令由 apache2-common 包提供.

/var/www

默认情况下将要发布的网页文件应该置于/var/www目录下,这一默认值可以同过主配置文件中的DocumnetRoot 选项修改.

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如何用java替换看不见的字符比如零宽空格​十六进制U+200B
 干货   2023-09-10
网页字号不能单数吗,网页字体大小为什么一般都是偶数
 干货   2023-09-06
java.lang.ArrayIndexOutOfBoundsException: 4096
 干货   2023-09-06
Noto Sans CJK SC字体下载地址
 干货   2023-08-30
window.navigator和navigator的区别是什么?
 干货   2023-08-23
js获取referer、useragent、浏览器语言
 干货   2023-08-23
oscache遇到404时会不会缓存?
 干货   2023-08-23
linux下用rm -rf *删除大量文件太慢怎么解决?
 干货   2023-08-08
刀郎新歌破世界纪录!
 娱乐   2023-08-01
js实现放大缩小页面
 干货   2023-07-31
生成式人工智能服务管理暂行办法
 百态   2023-07-31
英语学习:过去完成时The Past Perfect Tense举例说明
 干货   2023-07-31
Mysql常用sql命令语句整理
 干货   2023-07-30
科学家复活了46000年前的虫子
 探索   2023-07-29
英语学习:过去进行时The Past Continuous Tense举例说明
 干货   2023-07-28
meta name="applicable-device"告知页面适合哪种终端设备:PC端、移动端还是自适应
 干货   2023-07-28
只用css如何实现打字机特效?
 百态   2023-07-15
css怎么实现上下滚动
 干货   2023-06-28
canvas怎么画一个三角形?
 干货   2023-06-28
canvas怎么画一个椭圆形?
 干货   2023-06-28
canvas怎么画一个圆形?
 干货   2023-06-28
canvas怎么画一个正方形?
 干货   2023-06-28
中国河南省郑州市金水区蜘蛛爬虫ip大全
 干货   2023-06-22
javascript简易动态时间代码
 干货   2023-06-20
感谢员工的付出和激励的话怎么说?
 干货   2023-06-18
 
>>返回首页<<
 
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有