Per /xxx/ per fare il rewrite a /index.php?c=xxx hai bisogno del seguente:
RewriteEngine On
RewriteRule ^(.*)/$ index.php?c=$1 [L,QSA]
Se l'utente naviga a mydomain.com/help/ il server mostrerà mydomain.com/index.php?c=help
Qui sotto qualcosa di simile per la variabile p, nota come questa regola è prima dell'ultima regola in modo che sia controllata prima.
RewriteEngine On
RewriteRule ^(.*)/(.*)/$ index.php?c=$1&p=$2 [L,QSA]
RewriteRule ^(.*)/$ index.php?c=$1 [L,QSA]
Per la cartella dashboard bisogna che metta la regola sopra queste regole, in modo che di nuovo sia controllata prima ad esempio:
RewriteEngine On
RewriteRule ^dashboard/(.*)/$ dashboard.php?c=$1&p=$2 [L,QSA]
RewriteRule ^dashboard/$ dashboard.php?c=$1&p=$2 [L,QSA]
RewriteRule ^(.*)/(.*)/$ index.php?c=$1&p=$2 [L,QSA]
RewriteRule ^(.*)/$ index.php?c=$1 [L,QSA]
L'esempio home.php che dai non è possibile in quanto corrisponde alla versione index.php, ma puoi fare come segue:
RewriteEngine On
RewriteRule ^home/(.*)/(.*)/$ home.php?c=$1&p=$2 [L,QSA]
RewriteRule ^home/(.*)/$ home.php?c=$1 [L,QSA]
RewriteRule ^dashboard/(.*)/(.*)/$ dashboard.php?c=$1&p=$2 [L,QSA]
RewriteRule ^dashboard/(.*)/$ dashboard.php?c=$1 [L,QSA]
RewriteRule ^(.*)/(.*)/$ index.php?c=$1&p=$2 [L,QSA]
RewriteRule ^(.*)/$ index.php?c=$1 [L,QSA]