Амперсанды экранируются при перенаправлении в .htaccess - PullRequest
0 голосов
/ 11 апреля 2019

Я хочу, чтобы сервер Apache перенаправил URL https://frot.io/cv на https://latexonline.cc/compile?git=https%3A%2F%2Fgithub.com%2Ffrot-io%2Fcurriculum-vitae&target=main.tex&command=xelatex и, таким образом, вставил оператор Redirect в .htaccess:

RewriteEngine On 
RewriteBase /

# Redirect to https
RewriteCond %{SERVER_PORT} !^443$
RewriteRule (.*) https://%{HTTP_HOST}/$1 [R=301,L]

# Redirect frot.io/cv
Redirect 301 "/cv" "https://latexonline.cc/compile?git=https%3A%2F%2Fgithub.com%2Ffrot-io%2Fcurriculum-vitae&target=main.tex&command=xelatex"

Однако, это перенаправляет на https://latexonline.cc/compile?git=https%3A%2F%2Fgithub.com%2Ffrot-io%2Fcurriculum-vitae%26target%3Dmain.tex%26command%3Dxelatex (два амперсанда и знаки равенства экранированы), что приводит к ошибке.

Как я могу запретить apache экранировать амперсанды в URL?

Я тоже пытался их избежать (%26 и %3D), но также ошибочно перенаправлен.

1 Ответ

0 голосов
/ 27 июня 2019

Я получил решение с помощью поддержки:

RewriteEngine On
Redirect 301 /cv https://latexonline.cc/pending?git=https%3A%2F%2Fgithub.com%2Ffrot-io%2Fcurriculum-vitae&target=main.tex&command=xelatex
RewriteBase /
...
...