Apache2 Install
出自Gentoo Linux Wiki
| 安装方法 • 架构/平台 • 内核 & 硬件 • Portage • 系统相关 • 网络 & 服务器 • X服务器 • 软件 • 游戏 • 非x86平台 |
|
|
|
主程序
模块
Addons & Tunnels Tips 配置 其它 |
| edit |
[编辑] 开始
现在的apache可以在大多数系统上完美地运行,如果你遇到一些问题,“常见问题”这一部分可能会对你有些帮助。关于更多设置apache来实现服务多重域名的信息请参见HOWTO Setup mysql virtual hosting。
首先我们来执行emerge,先在make.conf里加入“apache2”这个USE标记,然后运行:
emerge -av apache
然后把以下内容加入到/etc/apache2/httpd.conf的底部:
注意在较新版本的apache里,这些内容可能已经被写在\etc\apache2\vhosts.d\00_default_vhost.conf里面了。所以你没有必要设置这个,除非你想做一些调整。
ServerName <name> Listen <port>
这里的<name>是主机名,<port>是你想要apache监听的端口。如果你在本地运行apache,你可以使用localhost作为主机名,而端口一般是80。
现在你就有了一个基本的apache服务器了。
Apache 2.2.8允许你在make.conf里面通过设置APACHE2_MODULES变量来设置要加载到apache里的模块,你也可以通过在make.conf里面设置APACHE2_MPMS变量来设置已使用的mpm。 如果你不指定这些变量,那么系统就会使用以下的默认值:
nano -w /etc/make.conf
APACHE2_MODULES="actions alias
auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile
authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires
ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation
rewrite setenvif speling status unique_id userdir usertrack vhost_alias proxy"
# default disabled modules:
# -asis -auth_digest -authn_dbd -cern_meta -charset_lite -dbd -dumpio -ident -imagemap -log_forensic
# -proxy -proxy_ajp -proxy_balancer -proxy_connect -proxy_ftp -proxy_http -version"
APACHE2_MPMS="" # default disabled mpms: # -event -itk -peruser -prefork -worker"
[编辑] 启动Apache
请使用以下命令来启动apache2:
/etc/init.d/apache2 start
如果你想要apache开机就启动,请运行:
rc-update add apache2 default
请参加Gentoo手册的启动脚本部分来得到更多的信息。
你现在应该有了一个正在工作的apache了。在浏览器里输入http://localhost/ 后按下回车,你就会看到apache的欢迎页面。
apache的最简单的一个功能就是提供一些老文件。基本模式是:使用含有网页文件的目录替代http://hostname/。apache使用的默认主目录是/var/www/localhost/htdocs/。你可以在/etc/apache2/vhosts.d/00_default_vhost.conf里面修改这个变量。这里是一个例子:
- http://hostname/index.html 指向 /var/www/localhost/htdocs/index.html
- http://hostname/foo/bar.txt 指向 /var/www/localhost/htdocs/foo/bar.txt
事实上,你会发现/var/www/localhost/htdocs/index.html就是之前你看到的apache的欢迎页面。请注意,在你请求htdocs/的时候,apache会自动指向htdocs/index.html。这是由于HTTP的设计方式。apache不能传送整个目录,但是它需要显示一些东西。用一个索引代替可能是一个不错的选择。apache允许你指定一个文件作为索引主页,或者apache会自动建立一个目录的索引。一般来说,我们都会把索引设置成我们网站的主页,因为列出一个目录的索引是没有什么意义的。
[编辑] 模块
apache是极其神通广大的。它即可以通过http来发布文件,也可以通过ftp来发布文件。它可以用来发送硬盘上的文件,也可以显示一个php脚本的输出信息。为了实现这些目的,apache使用了“模块”。也许在别的程序里它们被叫做插件。无论它们被叫做什么,它们一般都是增强程序功能并能被独立地安装或卸载的。当你要在apache里删除一些模块时,你不需要卸载,甚至不要重新编译。
apache的模块命名遵守mod_*****的规则。有些模块是和apache捆绑在一起的,而别的一些模块需要被独立地安装。portage包括了许多apache的模块,安装一个模块的一般步骤如下:
- emerge module
- 编辑/etc/conf.d/apache2文件,并加入
-D ''MOD'' code>来启用它。 - 你也可以调节
/etc/apache2/modules.d/''xy''_''module'' code> - 在httpd.conf或者.htaccess里面加入配置目录
把上方的“emerge module”中的module替换成你需要的模块,并把MOD替换成相应的值。
正如:
emerge mod_perl nano /etc/conf.d/apache2 # change APACHE_OPTS="" to APACHE_OPTS="-D PERL"
一些特定的apache模块的安装指南可以在本wiki的Apache Index里面找到。如果你想了解与apache捆绑在一起的模块的话,你也许想看the documentation。
[编辑] 配置
httpd.conf(/etc/apache2/httpd.conf)里面包含了许多的gentoo的示例。然而,你可能觉得这些东西对于你来说太多了或许你也可能觉得太少了。apache的配置文件有统一的格式。
以#开头的每一行都被忽略了。
# apache不管我在这里放了些什么 , # 对于留下一些注释来说这方法很好用。
大多数以指令开头的行都带有一个或多个参数。
(指令) (一个或多个参数)
指令可以被添加在一些区域里来控制它们的作用范围。
翻译进行中…………
译者:--JackSM 2008年4月30日 (三) 13:38 (UTC)
