/ / Htaccess reescreve o índice com barra final ou sem - .htaccess

Htaccess reescrever o índice com barra final ou sem -.

No momento, estou tendo um problema com a reescrita do meu URL de índice no meu arquivo .htaccess, sei se uso

RewriteRule ^profile/([^/]*)/?$ /profile.php?x=$1 [L]

Eu poderia usar www.example.com/profile/get ou www.example.com/profile/get/ (com ou sem barra)

Mas eu gostaria que www.example.com/get o que tenho até agora é

RewriteRule ^([^/]*)/$ /index.php?x=$1 [L]

Mas se eu colocar um? antes do $ it erros qualquer resposta bem-vinda

Respostas:

2 para resposta № 1

Tornar opcional a barra à direita levará a um loop infinito, pois [^/]* corresponderá a qualquer coisa que não inclua um /, ou seja, também corresponderia index.php?x=get

Você pode evitar isso fazendo a regra aplicar condicionalmente, por exemplo, testando o URI reqeust:

RewriteCond %{REQUEST_URI} !^/index.php.*
RewriteRule ^([^/]*)/?$ /index.php?x=$1 [L]

Dessa forma, a regra só pode ser aplicada se o URI da solicitação não começar com /index.php