Apache Web Server面试问答题有哪些

65次阅读
没有评论

共计 6816 个字符,预计需要花费 18 分钟才能阅读完成。

本篇内容主要讲解“Apache Web Server 面试问答题有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让丸趣 TV 小编来带大家学习“Apache Web Server 面试问答题有哪些”吧!

1. 如何停止 / 启动 Apache Web 服务器?

您可以通过转到 Apache 实例位置 bin 文件夹重新启动并执行 apachectl 脚本。

./apachectl stop
./apachectl start 复制 

您也可以使用 /etc/init.d/ 中的脚本。通常将其命名为“apache”或“httpd”

/etc/init.d/apache stop
/etc/init.d/apache start 复制 

另一个过程是使用服务

httpd stop
service httpd start

2. HTTP 和 HTTPS 的默认端口是什么?

HTTP 的默认端口是 80 和 HTTPS443。点这里可以获取到详细列出了其他应用程序的默认端口。

3. 您能告诉我重要的配置文件名称吗?

httpd.conf 是 Apache 中使用的主要配置文件。

4. 如何检查正在运行的 Apache Web Server 的版本?

有多种找到此方法的方法,但更准确地说是:

(1) 登录到 Web 服务器

(2) 转到 apache 实例和 bin 文件夹

(3) 用 - v 执行 httpd 以获取版本详细信息

[root@lab sbin]# ./httpd -v
Server version: Apache/2.2.15 (Unix)
Server built: Jul 18 2016 15:24:00
[root@lab sbin]#

或者,您也可以使用 rpm 命令检查安装的版本。获取参考

[root@lab ~]# rpm -qa |grep httpd
httpd-2.2.15-54.el6.centos.x86_64
httpd-tools-2.2.15-54.el6.centos.x86_64
[root@lab ~]#

5. 如何知道 Web 服务器是否正在运行?

有多种找到方法。

(1) 登录到 Web 服务器并进行 grep 的“httpd”处理

ps -ef |grep httpd 复制 

(2) 在监视仪表板上检查是否有任何警报 (3) 检查您的 apache IP:port 是否可以在浏览器中访问 (4) 使用 netstat 检查配置的 IP 和端口是否正在服务器上侦听

netstat -anlp |grep 80

6. 如何安装 Apache HTTP?

有三种可能的方法来安装此程序,点这里更多 JAVA 中间件内容详见

(1) 使用源代码 –您可以下载源代码并进行编译。

从 http://httpd.apache.org/download.cgi 下载最新版本 使用 tar 实用程序或 gzip 实用程序提取源,具体取决于文件类型:.tar 或.tar.gz

tar xvf httpd-1.2.3.tar
gzip -d httpd-1.2.4.tar.gz

通过 cd 命令导航到提取源的位置,并./configure 在终端上使用命令进行配置, 然后使用 make 命令进行编译。最后,使用 make install 命令进行安装。如果要查找有关如何配置它的更多选项,可以使用该 configure –help 命令。

(2)YUM 存储库

如果您的服务器已连接到 Internet 或具有内部存储库,则可以使用 yum 进行安装。参考教程

yum install httpd

(3)RPM

您可以下载必要的 RPM 软件包并使用 rpm 命令。

rpm -ivh packagename.rpm

7. 如何确保 Apache 仅侦听服务器上的一个 IP 地址?

当服务器上有多个 IP 时,通常需要这样做。为了确保 Apache 仅侦听指定的 IP,则需要在 Listen 指令中明确提及 IP 和端口。

例如:

Listen 10.10.10.10:80

8. 如何确保 Apache 以非 root 用户 / nobody 用户运行?

这可以通过在 httpd.conf 文件中添加 User&Group 指令来实现

User apache
Group apache

上面的配置示例将确保它以“apache”用户开头。在配置服务器之前,必须确保服务器上存在用户。

9. 如何禁用目录索引?

您可以在相应的目录指令中使用“Options -Indexes”。例如:

Directory / 
 Options -Indexes
 /Directory

10. 哪个模块需要重定向?

mod_rewrite 负责重定向,并且必须在 httpd.conf 文件中取消注释。

LoadModule rewrite_module modules/mod_rewrite.so

11. 您可以将监听端口从默认端口更改为其他端口吗?

是的,可以通过在 Listen 指令中指定端口号来实现。例如:使 Apache 在 9000 端口上侦听 10.10.10.10 IP 地址。

Listen 10.10.10.10:9000

12. 如何保护 Apache Web Server 上托管的网站?

有多种保护 Apache Web 服务器安全的方法,包括以下几种。

(1) 实施 SSL

(2) 与 WAF(Web 应用程序防火墙)(如 ModSecurity 等)集成

(3) 使用基于云的安全提供程序

13. Apache 生成哪些日志文件?

创建了两个流行的日志文件。

access.log –所有请求详细信息以及状态码

error.log –捕获 apache 或连接到后端中的所有错误

14. 如何创建企业 CSR?

您可以使用以下 OpenSSL 命令或在线生成 CSR。

openssl req -out geekflare.csr -newkey rsa:2048 -nodes -keyout geekflare.key

15. 什么是虚拟主机?

Apache 中的虚拟主机允许您在单个实例上托管多个网站。您可以创建基于 IP 或基于虚拟主机的名称。

16. 连接到 WebSphere 需要什么模块?

mod_was_ap22_http.so 必须以 httpd.conf 文件形式添加才能与 IBM WAS 集成。

17. 如何将日志级别置于调试模式?

当您对问题进行故障排除并希望捕获更多详细信息时,通常需要使用它。您可以通过确保 httpd.conf 文件中的以下内容来更改日志记录级别以进行调试。

LogLevel debug

18. 启用 SSL 需要哪个模块?

在实施 SSL 之前,必须取消对 mod_ssl 模块的注释。

LoadModule auth_basic_module modules/mod_ssl.so

19. WebLogic 模块名称是什么?

mod_wl_22.so

20. Apache 中可用的日志级别是什么?

默认配置设置为“warn”,但是也可以进行以下操作。

调试 信息 警告 注意 暴击 报警 能源 错误

21. 什么是 DocumentRoot?

DocumentRoot 指令是一种配置,您可以在其中指定将从中提供静态文件的文件夹位置。也称为 WebRoot。

Default DocumentRoot location is /var/www/html

22. 如何在 Apache 中部署 war 或 JAVA 应用程序?

Apache 是 Web 服务器,并且它无法进行基于 Java 的应用程序部署。但是,您可以集成 Java 应用程序服务器,例如 WebLogic,WebSphere 和 JBoss,在其中可以部署 war,ear 文件。点这里见更多

23. Apache Web 服务器和 Apache Tomcat 有什么区别?

Apache Web 是用于提供静态内容的 HTTP 服务器,其中 Tomcat 是用于部署 JSP 文件的 servlet 容器。

您始终可以 ** 将 Apache HTTP 与 Tomcat 集成,但是,根据需要,您可以选择其中之一。如果您需要合适的 Web 服务器,则可以使用 Apache HTTP 或 JSP-Servlet 容器的 Tomcat。

24. Apache 如何充当代理服务器?

您可以使用 mod_proxy 模块用作代理服务器。mod_proxy 模块可用于连接到后端服务器,例如 Tomcat,WebLogic,WebSphere 等。

25. 如何配置 Apache 日志,以捕获服务请求所花费的时间?**

您可以在 LogFormat 指令下的 httpd.conf 文件中添加“%D”,以捕获响应请求所花费的响应时间。它将以毫秒为单位显示时间。

LogFormat  %h %l %u %t \ %r\  % s %b \ %{Referer}i\  \ %{User-Agent}i\  %D  combined

重新启动 Apache Web 服务器,您可以看到结果。

182.19.197.23 - - [02/Oct/2016:10:32:25 +0000]  GET / HTTP/1.1  403 4961  -   Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36  1515
182.19.197.23 - - [02/Oct/2016:10:32:25 +0000]  GET /icons/apache_pb.gif HTTP/1.1  304 -  http://lab.geekflare.com/   Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36  424
182.19.197.23 - - [02/Oct/2016:10:32:25 +0000]  GET /icons/poweredby.png HTTP/1.1  304 -  http://lab.geekflare.com/   Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36  472

26. 您使用什么工具进行日志分析?

可以使用 GoAccess,SumoLogic 等诸多工具。

27. 您与 Apache 一起使用过哪些 Web 服务器?

市场上有很多 Web 服务器,选择自己熟悉等即可,比如 Nginx 等。

28. 如何验证 httpd.conf 文件以确保没有配置语法错误?

httpd –t 将帮助您检查语法。

[root@lab httpd]# /usr/sbin/httpd -t
Syntax OK
[root@lab httpd]#

另外,您也可以使用 apachectl 命令。

[root@lab ~]# /usr/sbin/apachectl configtest
Syntax OK
[root@lab ~]#

29. 如何执行 Apache 性能基准测试?

您可以使用 ApacheBench,SIEGE 之类的工具在包括 Apache 在内的 Web 服务器上执行负载测试。在线执行压力测试的另一种选择,以查看 Web 应用程序在负载下的总体性能。

30. 如果出现问题,如何获得对 Apache Web Server 的支持?

Apache 是一个开源 Web 服务器,因此没有企业级支持。但是,您可以提出错误报告或对堆栈溢出提出问题。

31. 如何确保服务器重启后 Web 服务器能够启动?

如果运行 Linux,则可以将脚本放在 /etc/init.d/ 中,并使用 chkconfig 命令启用启动

假设您创建了一个名为 apache 的文件,并将其放在 /etc/init.d 下

chkconfig --add apache
chkconfig apache on

如果在 Windows 上,则确保启动类型选择为“自动”。

32. Apache 和 Nginx Web 服务器有什么区别?

两者都归类为 Web 服务器,这是一些主要区别。

(1)Nginx 是基于事件的 Web 服务器,其中 Apache 基于进程

(2)Nginx 以比 Apache 更好的性能而闻名

(3)Apache 支持 Nginx 不支持 OpenVMS 和 IBMi 的各种操作系统

(4)Apache 已与 Nginx 仍在追赶的后端应用程序服务器进行了大量模块集成

(5)Nginx 轻巧,可以迅速占领市场份额

33. 如果无法正常运行,您将如何杀死 Apache?

如果在 Linux 上运行,则可以使用 kill 命令。使用 ps -ef | grep http 找出 Apache 的 PID, 然后杀死它。

kill $PIDNUMBER

如果正常杀死无效,请尝试杀死 -9

kill -9 $PIDNUMBER

如果在 Windows 上,则从任务管理器结束 Apache 任务。

34. 如果您不知道安装位置,如何找到 httpd.conf 文件?

在 Linux 中,您可以使用 find 命令。

假设您知道它必须在 / apps 文件系统中,那么可以使用以下命令。

find /apps -name httpd.conf

但是,如果不确定哪个文件系统,则可以在 / 文件系统上查找,但请记住,根据文件系统的整体大小,可能要花很长时间。

find / -name httpd.conf

35. 您知道 Apache Web 服务器有哪些不同的风格?

(1)IBM HTTP Server –被称为 IHS,通常与 IBM WebSphere Application Server 一起使用

(2)Oracle HTTP Server- 称为 OHS,通常与 Oracle Weblogic 服务器一起使用

36. Apache 在数据中心位置在哪里?

您可以根据自己的经验进行解释,但是,通常对于面向 Internet 的应用程序,它应该位于 Internet DMZ 网络中以及 Intranet,核心网络中。

但这又会因应用程序 / 组织而异。

37. 如何在 HTTP 响应标头中隐藏服务器版本详细信息?

在 httpd.conf 文件中添加以下内容,然后重新启动 Web 服务器

ServerTokens Prod
ServerSignature Off

这将隐藏版本并将服务器显示为“仅 Apache”。

38. 200、403 和 503 HTTP 错误代码是什么意思?

200 –找到内容并投放

403 –尝试访问受限制的文件 / 文件夹

503- 服务器太忙,无法处理请求,换句话说,服务不可用

39. 如何禁用跟踪 HTTP 请求?

在 httpd.conf 文件中添加以下内容,然后重新启动实例

TraceEnable off

40. 如何解决端口冲突问题?

netstat 对解决端口冲突问题很有用。如果在单个服务器上运行多个实例,则建议为监听指令配置绝对 IP:Port。

41. 如何安装第三方模块?

您可以使用 Apache Toolbox。下载后,使用 tar 实用程序将其解压缩。

tar -xf Apachetoolbox-1.5.72.tar.gz

Apachetoolbox-1.5.72 使用 cd 命令导航到该文件夹,然后运行以下命令为您的 Apache 服务器选择模块。

./install.sh

它提供了 mod_ip_forwarding,mod_auth_mysql 和 mod_auth_samba 与 Apache Web 服务器一起编译的模块。尽管您可以手动包括这些模块,但是使用 Apache Toolbox 更加容易。

42. 如何为虚拟主机分配多个名称?

您可以使用 ServerAlias 如下所示的指令。

ServerName example.com
ServerAlias awesome.com fantastic.com

43. 如何限制上传大小?

我有一个 Web 应用程序,允许用户上传文件,如 Word 文档,pdf 等。如何限制用户上传文件?

您可以使用 LimitRequestBody 指令限制上传文件的大小。

Directory  usr/local/apache2/uploads 
LimitRequestBody 9000
 /Directory

分配给的值 LimitRequestBody 允许 Apache 接受并存储用户上传的 9000 字节的文件。您可以根据需要调整值。

44. 如何限制 IP 访问?

您可能希望某些上下文根可由允许的 IP 访问。为此,您可以使用 mod_authz_core 或 mod_authz_host 模块使用 Require 指令限制访问。

Require 10.0.0.2 10.0.0.4 192.168.34.23 192.168.34.23

通过上述操作,仅当请求来自列出的 IP 时,Apache 才会处理请求。

您需要 Require 在目录中指定要允许或拒绝访问资源的指令。

到此,相信大家对“Apache Web Server 面试问答题有哪些”有了更深的了解,不妨来实际操作一番吧!这里是丸趣 TV 网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-03发表,共计6816字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)