htaccess удалить определенный параметр get из URL - PullRequest
0 голосов
/ 11 марта 2019

Я использую Google OAuth для подключения к приборной панели, проблема в том, что когда параметр GET &scope обратного вызова содержит URL-адрес типа "https://www.googleapis.com/auth/userinfo.profile",, хост возвращает ошибку 403.

Таким образом, после многих исследований единственное решение, которое я нашел, это удалить scope из URL.

Я хочу изменить URL обратного вызова из этого:

https://msite.com/?code=xxx&scope=email%20profile%20https://www.googleapis.com/auth/userinfo.profile%20https://www.googleapis.com/auth/userinfo.email

К этому

https://msite.com/?code=xxx&scope=true

Вот мой основной htaccess

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ /index.php?a=$1 [QSA,L]

1 Ответ

0 голосов
/ 11 марта 2019

Вы можете использовать это:

RewriteEngine on

RewriteCond %{THE_REQUEST} /\?code=([^&]+)&scope=email.+ [NC]
RewriteRule ^$ /?code=%1&scope=true [L,R=301]

Это перенаправит ваши URL с

/?code=Sometext&scope=emailSometext

К

/?code=Sometext&scope=true
...