Estoy ejecutando Ubuntu 20.04 y actualmente estoy creando una API usando php. Agregué un .htaccess
archivo que DEBE redirigir las páginas 404 a mi index.php. Pregunto esto en Askubuntu porque creo que puede ser un problema con mis configuraciones de Apache. Entré en mi 000-default
archivo /etc/apace2/sites-available
y modifiqué:
<Directory /var/www/html>
Options -Indexes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
También modifiqué mi apache2.conf
entrada /etc/apache2/apache2.conf
para que se vea así:
<Directory />
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
<Directory /usr/share>
AllowOverride All
Require all granted
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
#<Directory /srv/>
# Options Indexes FollowSymLinks
# AllowOverride None
# Require all granted
#</Directory>
Este es el contenido de mi archivo .htaccess:
<IfModule mod_rewrite.c>
RewriteEngine On
# Send would-be 404 requests to Craft
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_URI} !^/(favicon\.ico|apple-touch-icon.*\.png)$ [NC]
RewriteRule (.+) index.php?p=$1 [QSA,L]
</IfModule>
Intenté escribir algo como "ESTO DEBE ERROR", pero cuando fui a recargar el navegador no obtuve el error 500 como se esperaba, pero aún así aparece el error 400, por lo que esto me dice que mi .htaccess
archivo no está siendo atacado.
Después de modificar cualquier archivo de Apache o del sistema, ejecuté
sudo systemctl restart apache2
pero sin dados.
No estoy seguro de qué más modificar en este momento. Cualquier ayuda se agradece, gracias.
Respuesta1
Sospecho que el problema no es que se esté ignorando su .htaccess sino que mod_rewrite no está habilitado. Intente sudo a2enmod rewrite
reiniciar Apache2.