25 preguntas de la entrevista de Apache para principiantes e intermedios


Estamos muy agradecidos con todos nuestros lectores por la respuesta que estamos obteniendo para nuestra nueva sección de entrevistas de Linux. Y ahora hemos comenzado el aprendizaje inteligente de la sección para las preguntas de la entrevista y continuamos con el mismo artículo de hoy que se centra en las preguntas de la entrevista Apache básicas a intermedias que le ayudarán a prepararse.

En esta sección, hemos cubierto algunas interesantes 25 preguntas de la entrevista de trabajo de Apache junto con sus respuestas para que pueda comprender fácilmente algunas cosas nuevas sobre Apache que quizás nunca antes había conocido.

Antes de leer este artículo, le recomendamos encarecidamente que no intente memorizar las respuestas, siempre primero intente comprender los escenarios de forma práctica.

[[email protected] ~]# rpm -qa | grep httpd

httpd-devel-2.2.15-29.el6.centos.i686
httpd-2.2.15-29.el6.centos.i686
httpd-tools-2.2.15-29.el6.centos.i686
[[email protected] ~]# httpd -v

Server version: Apache/2.2.15 (Unix)
Server built:   Aug 13 2013 17:27:11
[[email protected] ~]# netstat -antp | grep http

tcp        0      0 :::80                       :::*                        LISTEN      1076/httpd          
tcp        0      0 :::443                      :::*                        LISTEN      1076/httpd
[[email protected] ~]# yum install httpd
[[email protected] ~]# apt-get install apache2
[[email protected] ~]# cd /etc/httpd/
[[email protected] httpd]# ls -l
total 8
drwxr-xr-x. 2 root root 4096 Dec 24 21:44 conf
drwxr-xr-x. 2 root root 4096 Dec 25 02:09 conf.d
lrwxrwxrwx  1 root root   19 Oct 13 19:06 logs -> ../../var/log/httpd
lrwxrwxrwx  1 root root   27 Oct 13 19:06 modules -> ../../usr/lib/httpd/modules
lrwxrwxrwx  1 root root   19 Oct 13 19:06 run -> ../../var/run/httpd
[[email protected] ~]# cd /etc/apache2
[[email protected] apache2]# ls -l
total 84
-rw-r--r-- 1 root root  7113 Jul 24 16:15 apache2.conf
drwxr-xr-x 2 root root  4096 Dec 16 11:48 conf-available
drwxr-xr-x 2 root root  4096 Dec 16 11:45 conf.d
drwxr-xr-x 2 root root  4096 Dec 16 11:48 conf-enabled
-rw-r--r-- 1 root root  1782 Jul 21 02:14 envvars
-rw-r--r-- 1 root root 31063 Jul 21 02:14 magic
drwxr-xr-x 2 root root 12288 Dec 16 11:48 mods-available
drwxr-xr-x 2 root root  4096 Dec 16 11:48 mods-enabled
-rw-r--r-- 1 root root   315 Jul 21 02:14 ports.conf
drwxr-xr-x 2 root root  4096 Dec 16 11:48 sites-available
drwxr-xr-x 2 root root  4096 Dec  6 00:04 sites-enabled

7. ¿Se puede proteger Apache con envoltorios TCP?

Suponga que tiene varias direcciones IP asignadas a su máquina Linux y desea que Apache reciba solicitudes HTTP en un puerto o interfaz Ethernet especial, incluso eso se puede hacer con la directiva Listen.

Para cambiar el puerto predeterminado de Apache, abra su archivo de configuración principal de Apache httpd.conf o apache2.conf con el editor VI.

[[email protected] ~]# vi /etc/httpd/conf/httpd.conf

[[email protected] ~]# vi /etc/apache2/apache2.conf

Busque la palabra "Escuchar", comente la línea original y escriba su propia directiva debajo de esa línea.

# Listen 80
Listen 8080

OR

Listen 172.16.16.1:8080

Guarde el archivo y reinicie el servidor web.

[[email protected] ~]# service httpd restart

[[email protected] ~]# service apache2 restart

Para usar la directiva Alias, es parte del módulo mod_alias de Apache. La sintaxis predeterminada de la directiva Alias u200bu200bes:

Alias /images /var/data/images/

Aquí, en el ejemplo anterior, el prefijo/images url al prefijo/var/data/images que significa que los clientes buscarán "http://www.example.com/images/sample-image.png" y Apache recogerá el " sample-image.png ”de /var/data/images/sample-image.png en el servidor. También se conoce como asignación de URL.

La configuración predeterminada de DirectoryIndex es .html index.html index.php, si tiene diferentes nombres de su primer archivo, debe realizar los cambios en httpd.conf o apache2.conf para que el valor de DirectoryIndex se muestre en el navegador de su cliente.

#
# 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

Para detener la lista de directorios de Apache, puede establecer la siguiente regla en el archivo de configuración principal globalmente o en el archivo .htaccess para un sitio web en particular.

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

Puede agregar tantas directivas como necesite para su dominio, pero las dos entradas mínimas para un sitio web que funcione son ServerName y DocumentRoot. Por lo general, definimos nuestra sección Virtual Host en la parte inferior del archivo httpd.conf en máquinas Linux.

<VirtualHost *:80>
   ServerAdmin [email protected]
   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 : Its usually the email address of the website owner, where the error or notification can be sent.
  2. DocumentRoot : location where the web files are located in the server(Necessary).
  3. ServerName : Its the domain name which you want to access from your web browser(Necessary).
  4. ErrorLog : Its the location of the log file where all the domain related logs are being recorded.
  1. <Location> is used to set element related to the URL / address bar of the web server.
  2. <Directory> refers that the location of file system object on the server

Para obtener más información, lea Cómo crear hosts virtuales basados u200bu200ben nombre/IP en Apache.

  1. Basic difference between Worker and MPM is in their process of spawning the child process. In the Prefork MPM, a master httpd process is started and this master process starts manages all other child processes to serve client requests. Whereas, In the worker MPM one httpd process is active, and it uses different threads to serve client requests.
  2. Prefork MPM uses multiple child processes with one thread each, where worker MPM uses multiple child processes with many threads each.
  3. Connection handling in the Prefork MPM, each process handles one connection at a time, whereas in the Worker mpm each thread handles one connection at a time.
  4. Memory footprints Prefork MPM Large memory footprints, where Worker has smaller memory footprints.

Por ejemplo: quiero poner límites de 100000 Bytes en la carpeta/var/www/html/tecmin/uploads. Por lo tanto, debe agregar la siguiente directiva en el archivo de configuración de Apache.

<Directory "/var/www/html/tecmint/uploads">
LimitRequestBody 100000
</Directory>
  1. mod_perl is an Apache module which is compiled with Apache for easy integration and to increase the performance of Perl scripts.
  2. mod_php is used for easy integration of PHP scripts by the web server, it embeds the PHP interpreter inside the Apache process. Its forces Apache child process to use more memory and works with Apache only but still very popular.

Para obtener más información, lea el artículo que le guía sobre cómo instalar y configurar mod_evasive en Apache.

Siempre que llega una solicitud https, Apache sigue estos tres pasos:

  1. Apache generates its private key and converts that private key to .CSR file (Certificate signing request).
  2. Then Apache sends the .csr file to the CA (Certificate Authority).
  3. CA will take the .csr file and convert it to .crt (certificate) and will send that .crt file back to Apache to secure and complete the https connection request.

Estas son solo las 25 preguntas más populares que los entrevistadores hacen estos días. Proporcione algunas preguntas más de la entrevista que haya enfrentado en su entrevista reciente y ayude a otros a través de nuestra sección de comentarios a continuación.

También le recomendamos que lea nuestros artículos anteriores sobre Apache.

  1. 13 Apache Web Server Security and Hardening Tips
  2. How to Sync Two Apache Web Servers/Websites Using Rsync

Además, nos enorgullece anunciar que ya se lanzó nuestra versión Beta de la sección de Preguntas/Respuestas de TecMint Ask. Si tiene preguntas sobre algún tema de Linux. Únase a nosotros y publique sus preguntas/consultas en https://www.tecmint.com/ask/.

Se me ocurrirán más preguntas de la entrevista sobre DNS, servidores de correo, PHP, etc. en nuestros artículos futuros, hasta entonces permaneceré Geeky y conectado a TecMint.com.