首页 > 编程语言 >#yyds干货盘点#Java面试题

#yyds干货盘点#Java面试题

时间:2023-12-17 22:00:57浏览次数:38  
标签:yyds 面试题 Java web URL 代理服务器 server Nginx 服务器

1、什么是 Nginx?

Nginx 是一个 web 服务器和反向代理服务器,用于 HTTP、HTTPS、SMTP、POP3 和 IMAP 协议。

2、请列举 Nginx 的一些特性。

Nginx 服务器的特性包括:

反向代理/L7 负载均衡器

嵌入式 Perl 解释器

动态二进制升级

可用于重新编写 URL,具有非常好的 PCRE 支持

3、请解释 Nginx 如何处理 HTTP 请求。

Nginx 使用反应器模式。主事件循环等待操作系统发出准备事件的信号,这样数据就可以从套接字读取,在该实例中读取到缓冲区并进行处理。单个线程可以提供数万个并发连接。

4、在 Nginx 中,如何使用未定义的服务器名称来阻止处理请求?

只需将请求删除的服务器就可以定义为:

Server {
	listen 80;
  server_name "";
  return 444;
}


这里,服务器名被保留为一个空字符串,它将在没有“主机”头字段的情况下匹配请求,而一个特殊的 Nginx 的非标准代码 444 被返回,从而终止连接。

5、 使用“反向代理服务器”的优点是什么?

反向代理服务器可以隐藏源服务器的存在和特征。它充当互联网云和 web 服务器之间的中间层。这对于安全方面来说是很好的,特别是当您使用 web 托管服务时。

6、请列举 Nginx 服务器的最佳用途。

Nginx 服务器的最佳用法是在网络上部署动态 HTTP 内容,使用 SCGI、WSGI 应用程序服务器、用于脚本的 FastCGI 处理程序。它还可以作为负载均衡器。

7、请解释 Nginx 服务器上的 Master 和 Worker 进程分别是什么?

Master 进程:读取及评估配置和维持

Worker 进程:处理请求

8、请解释你如何通过不同于 80 的端口开启 Nginx?

为了通过一个不同的端口开启 Nginx,你必须进入/etc/Nginx/sites-enabled/,如果这是默认文件,那么你必须打开名为“default”的文件。编辑文件,并放置在你想要的端口:

Like server { listen 81; }

9、请解释是否有可能将 Nginx 的错误替换为 502 、503错误?

502 =错误网关

503 =服务器超载

有可能,但是您可以确保 fastcgi_intercept_errors 被设置为 ON,并使用错误页面指令。

Location / {
	fastcgi_pass 127.0.01:9001;
    fastcgi_intercept_errors on;
    error_page 502 =503/error_page.html;#…
}


10、在 Nginx 中,解释如何在 URL 中保留双斜线?

要在 URL 中保留双斜线,就必须使用 merge_slashes_off;

语法:merge_slashes [on/off]

默认值: merge_slashes on

环境: http,server

标签:yyds,面试题,Java,web,URL,代理服务器,server,Nginx,服务器
From: https://blog.51cto.com/u_15426660/8863665

相关文章

  • #yyds干货盘点# LeetCode程序员面试金典:最长特殊序列 II
    题目给定字符串列表strs,返回其中最长的特殊序列的长度。如果最长特殊序列不存在,返回-1。特殊序列定义如下:该序列为某字符串独有的子序列(即不能是其他字符串的子序列)。s的子序列可以通过删去字符串s中的某些字符实现。例如,"abc"是"aebdc"的子序列,因为您可以删除......
  • 无涯教程-Java - String toString()函数
    此方法将自身返回一个字符串。StringtoString()-语法publicStringtoString()StringtoString()-返回值此方法返回字符串本身。StringtoString()-示例importjava.io.*;publicclassTest{publicstaticvoidmain(Stringargs[]){StringStr=newS......
  • Java-递归-爆栈问题
    一、递归时出现的错误现使用单路递归的方法进行n到一的求和,用Java代码实现如下://递归求和n+(n-1)+...+1publicclassE06Sum{publicstaticvoidmain(String[]args){longs=sum(15000);System.out.println(s);}//f(n)=f(n-1)......
  • 无涯教程-Java - String toLowerCase(Locale locale)函数
    如果指定Locale则根据Locale将此String中的所有字符转换为小写,否则调用toLowerCase(Locale.getDefault())默认方法。StringtoLowerCase-语法publicStringtoLowerCase(Localelocale)StringtoLowerCase-返回值它返回转换为小写字母的字符串。StringtoLowerCase-示......
  • java基础知识点之一维数组的两个常见小问题
    一:概述在一维数组的使用中,一不小心就会出现错误,尤其是在初学的情况下。在这里我要说明的是两个常见的问题索引越界问题和空指针异常的问题。二:具体说明<1>索引越界问题初学者打眼一看,可能认为这没有错误,但运行之后,程序报错了。这个错误,一不小心就会犯。因为有时候我们会惯性思维的......
  • 链表面试题解析
    链表面试题解析1.删除链表中=val的所有节点/***Definitionforsingly-linkedlist.*publicclassListNode{*intval;*ListNodenext;*ListNode(){}*ListNode(intval){this.val=val;}*ListNode(intval,ListNodenext){......
  • javascript基础
       ......
  • Java加解密【回车换行】坑与解决
    在Java中进行加解密时,经常会遇到回车换行的问题,这可能导致加解密结果不符合预期,引发一系列的错误。本文将探讨在Java加解密中常见的回车换行问题,并提供解决方案,以确保数据的准确性和一致性。一、问题背景在文本数据进行加密时,回车换行字符可能会在不同的操作系统上表示方式不同。例......
  • 无涯教程-Java - String toLowerCase()函数
    将此String中的所有字符转换为小写,这等同于调用toLowerCase(Locale.getDefault())。StringtoLowerCase()-语法publicStringtoLowerCase()StringtoLowerCase()-返回值它返回转换为小写字母的字符串。StringtoLowerCase()-示例importjava.io.*;publicclassTest......
  • 无涯教程-Java - toCharArray()函数
    此方法将此字符串转换为新的字符数组。char[]toCharArray()-语法这是此方法的语法-publicchar[]toCharArray()char[]toCharArray()-返回值它返回一个新分配的字符数组,其长度是此字符串的长度,并且其内容已初始化为包含此字符串表示的字符序列。char[]toCharArray()......