设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客
LUPA开源社区 首页 业界资讯 技术文摘 查看内容

关于 Apache 的 25 个初中级面试题

2014-2-24 09:54| 发布者: 红黑魂| 查看: 4365| 评论: 0|来自: 开源中国编译

摘要: 我们非常感谢所有我们的读者就我们新开的Linux面试章节给我们的回复. 而现在我们已经开始了关于面试提问,以及同今天关注的基础到中级的Apache面试提问的章节的学习,这将能够帮助你自己做好面试的准备. ...

12. 对于“DirectoryIndex”你是怎么理解的?

答案 : DirectoryIndex 是当有一个来自主机的请求时Apache首先会去查找的文件. 例如: 客户端发送请求www.example.com, Apache 对此将到站点的文件根目录查找index文件 (首先要展示的文件).

DirectoryIndex 的默认设置是 .html index.html index.php, 如果不是这个名字, 你需要对 httpd.conf 或者 apache2.conf 中的 DirectoryIndex 值做出修改,以将其展示在你的客户端浏览器上.

#
# DirectoryIndex: sets the file that Apache will serve if a directory
# is requested.
#
# The index.html.var file (a type-map) is used to deliver content-
# negotiated documents.  The MultiViews Option can be used for the
# same purpose, but it is much slower.
#
DirectoryIndex index.html index.html.var index.cgi .exe


13. 当index文件丢失时如何使目录列表失效?

答案 : 如果站点根目录中的主index文件失效, 那么Apache将会在浏览器上列出所有内容类似的文件,以替换站点主页.

为了关闭Apache目录列表, 你可以在主配置文件中全局的设置,或者在.htaccess文件中部分的设置如下规则.

<Directory /var/www/html>
   Options -Indexes
</Directory>

14. Apache Web 服务器有些什么不同的日志文件?

答案 : Apache Web 服务器的默认日志文件是访问日志 “/var/log/httpd/access_log” 和错误日志:/var/log/httpd/error_log”.

15. 你是怎样理解错误日志中的“connection reset by peer”的?

答案 : 当服务器正在向请求提供服务时终端用户中断连接, 我们就会在错误日志中看到“connection reset by peer“.


16. 什么是Apache的虚拟主机?

答案 : 虚拟主机部分包含的信息包括站点名称,文档根路径,目录索引,服务器管理员邮箱,错误日志文件路径等等。

你可以随意为你的域添加你需要的指令,但是要运行一个站点,至少要配置量个参数服务器名称文档根目录。 在Linux机器上,通常我们在httpd.conf文件的末尾来设定我们的虚拟主机部分的相关配置。

虚拟主机示例
<VirtualHost *:80>
   ServerAdmin webmaster@dummy-host.example.com
   DocumentRoot /www/docs/dummy-host.example.com
   ServerName dummy-host.example.com
   ErrorLog logs/dummy-host.example.com-error_log
   CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>

  1. ServerAdmin : 通常是指站点拥有者的电子邮箱,错误和通知可以发到里面。

  2. DocumentRoot : web文件在服务器上存放位置(必须配置).

  3. ServerName : 通过浏览器访问站点时的域名(必须配置).

  4. ErrorLog : 日志文件的位置,里面记录了所有与该站点相关的日志。


17. <Location>和<Directory>之间有什么区别?

答案 :

  1. <Location> 是用来设定和URL/ web服务器的地址栏相关的元素的。

  2. <Directory> 是指服务器上某对象在文件系统中的位置

18. 什么是Apache虚拟托管?

答案 : Apache虚拟托管是指,在单个web服务器上托管多个web站点。Apache 可以设定两种类型的虚拟主机:基于名称的虚拟托管基于IP的虚拟主机托管。

更多相关信息,请参阅 如何在Apache中创建基于Name/IP的虚拟主机

19. 你怎么理解Apache的MPM?

答案 : MPM意思是Multi Processing Modules,实际上是指Apache遵循的一些机制,用来接受和完成对web服务器的请求。


20.  Worker 和 Prefork MPM之间的区别是什么?

答案 : 它们都是MPM, Worker 和 prefork 有它们各自在Apache上的运行机制. 它们完全依赖于你想要以哪一种模式启动你的Apache.

  1. Worker 和 MPM基本的区别在于它们产生子进程的处理过程. 在Prefork MPM中, 一个主httpd进行被启动,这个主进程会管理所有其它子进程为客户端请求提供服务. 而在worker MPM中一个httpd进程被激活,则会使用不同的线程来为客户端请求提供服务.

  2. Prefork MPM 使用多个子进程,每一个进程带有一个线程而 worker MPM 使用多个子进程,每一个进程带有多个线程.

  3. Prefork MPM中的连接处理, 每一个进程一次处理一个连接而在Worker mpm中每一个线程一次处理一个连接.

  4. 内存占用 Prefork MPM 占用庞大的内存, 而Worker占用更小的内存.

21. “LimitRequestBody”的应用是什么,还有如何在你的上传中加入限制?

答案 : LimitRequestBody 指令被用来在上传大小上做一个限制.

例如: 我想要在 /var/www/html/tecmin/uploads目录中加入 100000 字节的限制. 那么你就需要在Apache配置文件中加入下面的指令.

<Directory "/var/www/html/tecmint/uploads">
LimitRequestBody 100000
</Directory>


22. mod_perl 和 mod _php 是什么?

答案:

  1. mod_perl 是一个随同Apache一起编译的Apache模块,用来做Perl脚本的简单集成并提升其性能.

  2. mod_php 用来做web服务器PHP脚本的简单集成, 它在Apache进程中嵌入了PHP解释器. 它强制Apache子进程使用更多的内存,并且只能在Apache上使用,但是仍然很流行.

23. Mod_evasive是什么?

答案: 它是一个保护你的web服务器不受像DDOS之类的web攻击的第三方模块,因为它一次只执行一个任务,所有执行得很不错.

更多信心,请阅读这篇文章, 它会指导你 如何在Apache中安装并配置mod_evasive.

24. httpd.conf文件中的Loglevel调试是什么?

答案 : 在Loglevel Debug 选项的帮助下, 我们可以在错误日志中获取或者记录更多的信息,以帮助我们调试问题.


25. mod_ssl 有什么用以及SSL在Apache中如何工作?

回答: Mod_ssl 是一个Apache模块, 它使Apache可以在一个安全的加密环境中建立连接和传输数据。 使用SSL证书,所有的登录信息和其他重要的保密信息都会以加密的方式在Internet上进行传输,这会防止我们的数据被窃取或IP欺骗。

怎样在Apache中使用SSL

每当https请求到达,Apache都会执行以下三步:

  1. Apache生成它的私钥并且将私钥转换为.CSR 文件 (证书签发请求).

  2. 然后Apache发送 .csr 文件给 CA (证书管理中心).

  3. CA 收到.csr 文件 并转换为 .crt (证书) 然后再发回给Apache 来完成https连接请求.

这就是目前被面试官问到的最流行的25的问题, 请在下面评论部分分享你最近面试被问到的面试问题来帮助其他其他面试者。


英文原文:25 Apache Interview Questions for Beginners and Intermediates


参与翻译(4人)

本文链接:http://www.oschina.net/translate/apache-interview-questions

酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部