Joomla! Volunteers Portal

Já seguiu todos os passos da documentação do Joomla para habilitar URL amigáveis e ainda está retornando erro 404 ao chamar os artigos pelo menu?

 

 [error] [client ...] File does not exist: /diretórios/seu_site/meus-registros, referer: http://seu_site/

 

Comecemos pelos passos abaixo, descritos na documentação do Joomla Enabling Search Engine Friendly (SEF) URLs on Apache:

 

1. Verificar se o módulo Rewrite do Apache está instalado. No caso do OpenSuse/SLES, é necessário ainda: 

# grep "^APACHE_MODULES" /etc/sysconfig/apache2

 

Você verá a lista de módulos habilitados:

APACHE_MODULES="actions alias auth_basic authn_file authz_host authz_groupfile authz_default authz_user authn_dbm autoindex 
cgi dir env expires include log_config mime negotiation setenvif ssl suexec userdir php5 reqtimeout rewrite"

Se o rewrite não estiver lá listado, é preciso incluir.

 

2. Verificar se o .htaccess está habilitado. Ou seja, nos arquivos de configuração do Apache você tem algo como:

<Directory "/home/user/public_html">
  AllowOverride All
</Directory>

<Directory "/path/to/htdocs">
  AllowOverride All Options=[an option],[an option],...
</Directory>
 

3. Renomear o arquivo htaccess.txt no diretório raiz do seu site para .htaccess.

mv htaccess.txt .htaccess

 

4. Acessar o Painel de Administração (Backend do Joomla) > Configuração Global. Habilite as opções URLs Amigáveis e Usar mod_rewrite do Apache.

 

 

Observação: Habilitando a opção Adicionar sufixo de URL, você terá .html no final da URL.
(Isso não é geralmente considerado pelos mecanismos de buscas).

 

5) Habilitar Extensões > Plugins > Sistema - SEF

 

Em princípio, já deve estar funcionando. Senão, siga adiante:

 

6) Em alguns casos, pode ser necessário ainda editar o arquivo .htaccess dependendo da configuração do servidor:

 

a) Comentar a linha abaixo (acrescentando um # no início da linha):

## Can be commented out if causes errors, see notes above.
Options +FollowSymlinks
Options -Indexes

b) Descomentar a linha abaixo (retirando o # do início da linha): 

##
# Uncomment following line if your webserver's URL
# is not directly related to physical file paths.
# Update Your Joomla! Directory (just / for root).
##

#RewriteBase /

 

7) Verifique a configuração para Override do seu Apache: 

 
/etc/apache2 # vi default-server.conf


#
# Global configuration that will be applicable for all virtual hosts, unless
# deleted here, or overriden elswhere.
#

#ServerName     pgi2.desenv.bb.com.br
DocumentRoot "/usr/aplic/sistema/www/pgi2.desenv.bb.com.br"

#
# Configure the DocumentRoot
#
<Directory "/usr/aplic/sistema/www/pgi2.desenv.bb.com.br">
        # Possible values for the Options directive are "None", "All",
        # or any combination of:
        #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
        #
        # Note that "MultiViews" must be named *explicitly* --- "Options All"
        # doesn't give it to you.
        #
        # The Options directive is both complicated and important.  Please see
        # http://httpd.apache.org/docs-2.2/mod/core.html#options
        # for more information.
        Options None
        # AllowOverride controls what directives may be placed in .htaccess files.
        # It can be "All", "None", or any combination of the keywords:
        #   Options FileInfo AuthConfig Limit
        AllowOverride All
        # Controls who can get stuff from this server.
        Order allow,deny
        Allow from all
</Directory>

# Aliases: aliases can be added as needed (with no limit). The format is
# Alias fakename realname
#
# Note that if you include a trailing / on fakename then the server will
# require it to be present in the URL.  So "/icons" isn't aliased in this
# example, only "/icons/".  If the fakename is slash-terminated, then the
# realname must also be slash terminated, and if the fakename omits the
# trailing slash, the realname must also omit it.
#
# We include the /icons/ alias for FancyIndexed directory listings.  If you
# do not use FancyIndexing, you may comment this out.
#
Alias /icons/ "/usr/share/apache2/icons/"

 

 No nosso servidor (SLES11 - Joomla 3.5.1), só funcionou após o sétimo passo, pelo qual eu passei com o suporte da SUSE. :)

Espero que funcione para você também.

 

 

Joomla! is a trademark of Open Source Matters. This site is not affiliated with or endorsed by the Joomla! Project or its trademark owners.