Al usar el archivo .htaccess aparece ell siguiente error:
500 Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator at webmaster@localhost to inform them of the time this error occurred, and the actions you performed just before this error.
More information about this error may be available in the server error log.
Diagnóstico
El error se puede deber a muchas razones, sin embargo, si estas usando un archivo .htaccess pasa por que el módulo rewrite debe ser explícitamente activado en el servidor Apache2 siempre que lo estes ejecutando dentro de un servidor Debian, ya que por default viene desactivado.
Solución
Para activar el módulo rewrite dentro de Debian simplemente debes ejecutar el siguiente comando:
sudo a2enmod rewrite
con esto debes reiniciar el servidor Apache2 con el comando que te dejo a continuación:
sudo systemctl reload apache2
Si deseas desactivar el módulo rewrite debes ejecutar el siguiente comando
sudo a2dismod rewrite
Otras Causas
Si el error no desaparece al hacer con la configuración anterior entonces es probable que el archivo .htaccess no este correctamente configurado, revisa que este correctamente configurado, te dejo un ejemplo:
Mientras generaba un reporte en excel para uno de nuestros sistemas de licencias, me tope con el error siguiente:
Uncaught Error: Class 'ZipArchive' not found in
El reporte que estoy creando consulta una tabla de la base de datos, realiza un query especifico y luego descarga el excel directamente desde el navegador, estoy usando la libreria de phpoffice: «phpspreadsheet» muy conocida en el mundo php. El código que ejecuto al final de la rutina es el siguiente:
Me puse a investigar un poco y al parecer el problema radicaba en que la ZipArchive ya no esta disponible en PHP 7.0 por lo que hay que instalar manualmente, puesto que la phpspreadsheet depende de esta ZipArchive debes asegurarte que la tengas habilitada.
Para resolver el problema solo tuve que instalar la mencionada librería ejecutando el siguiente comando en la consola de:
sudo apt-get install php7.0-zip
Algunos tutoriales que encontré me indicaban que modificará el archivo php.ini sin embargo yo solo tuve que reinicar el servidor apache
sudo /etc/init.d/apache2 restart
Con esto quedo solucionado, y pude generar el reporte en excel que estaba necesitando