.htaccess does not work rule

0

Would it be like getting my urls like this?

produtos/nome-categoria
ptodutos/nome-categoria/nome-subcategorias

I am not able to do this, look how I am doing the rule in .htaccess

<IfModule mod_rewrite.c>

RewriteEngine On
    #aqui criamos uma condição para que os arquivos sejam ignorados nas regras abaixo
    RewriteCond %{REQUEST_FILENAME} !-f
  #aqui criamos uma condição para que diretórios sejam ignorados nas regras abaixo
    RewriteCond %{REQUEST_FILENAME} !-d
    #aqui definimos onde começa a base das regras

    #fix rules
    RewriteRule ^pagina-inicial/?$ index.php [NC,L]       
   RewriteRule ^produtos/(.*)/(.*)$ categorias.php?id_categoria=$1&id_subcategoria=$2 [NC,L]
</IfModule>

So just the product / category name / sub-name funcina

    
asked by anonymous 30.06.2017 / 16:35

1 answer

0

You have to make a part of the regex optional.

For this, we use (?: group ) with quantifier ? .

^produtos/([^/]*)(?:/(.*))?
#                ^^^^^^^^^^
#                 opcional


.htaccess

<IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteRule ^pagina-inicial/?$ index.php [NC,L]

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^produtos/([^/]*)(?:/(.*))? categorias.php?id_categoria=$1&id_subcategoria=$2 [NC,L,QSA]
</IfModule>


Test no:

Or see it working:

02.07.2017 / 17:43