Более двух переменных в. htaccess
это первый раз, когда я должен работать с .htacces, чтобы сделать дружественные URL-адреса. С помощью следующего кода я смог сделать этот URL http://localhost/trafico/index.php?c=tarea преобразуется в http://localhost/trafico/tarea
Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9/]+)$ index.php?c=$1 [L]
но в настоящее время я не смог заставить его работать для второй и третьей переменных. Например, с этим URL http://localhost/trafico/index.php?c=tarea&a=Crud&id=21 . Как вы можете сделать?
1 answers
Это просто, следуя тому же примеру, который вы уже использовали, с шаблоном для каждой переменной (отрегулируйте наличие нижнего регистра, верхнего регистра и чисел в соответствии с вашими потребностями). Например:
RewriteRule ^([a-z0-9-]+)/([a-zA-Z0-9-]+)/([a-z0-9-]+)$ index.php?c=$1&a=$2&id=$3 [L]
Если у вас есть 1, 2 или 3 переменные в ваших URL-адресах,вы должны указать все случаи. Это было бы примерно так:
RewriteRule ^([a-z0-9-]+)/([a-zA-Z0-9-]+)/([a-z0-9-]+)$ index.php?c=$1&a=$2&id=$3 [L]
RewriteRule ^([a-z0-9-]+)/([a-zA-Z0-9-]+)$ index.php?c=$1&a=$2 [L]
RewriteRule ^([a-z0-9-]+)$ index.php?c=$1 [L]
Соответствовал бы а:
Http://localhost/trafico/tarea/subtarea/caso