Configurando uma aplicação de terceiro num servidor, me deparei com o problema de que minha URL www.sitedeexemplo.com/pt_BR/ não funcionava, mas quando trocava para um www.sitedeexemplo.com/index.php/pt_BR/ , o sistema rodava normalmente.
O problema todo foi a falta do arquivo .htaccess no diretório /web/ da aplicação. Abaixo, segue o código existente no .htaccess:
<IfModule mod_rewrite.c>
RewriteEngine On
# we skip all files with .something
RewriteCond %{REQUEST_URI} \..+$
RewriteCond %{REQUEST_URI} !\.html$
RewriteRule .* - [L]
# we check if the .html version is here (caching)
RewriteRule ^$ index.html [QSA]
RewriteRule ^([^.]+)$ $1.html [QSA]
RewriteCond %{REQUEST_FILENAME} !-f
# no, so we redirect to our front web controller
RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
É necessário ressaltar que o arquivo /web/apps/frontend/config/settings.yml deve conter o seguinte trecho de código:
prod:
.settings:
no_script_name: on
E ainda que o módulo mod_rewrite do Apache deve estar ativo.
Com isso, sua URL ficará mais limpa :)
Num próximo post irei mostrar como fazer para renomear da seguinte forma: www.sitedeexemplo.com/backend.php para simplesmente www.sitedeexemplo.com/admin/
É só.
Nenhum comentário:
Postar um comentário