Перенаправление Ruby cgi на url

#ruby #redirect #cgi

#ruby #перенаправление #cgi

Вопрос:

Как я могу перенаправить на другой URL, например. http://google.com использование Ruby (не ROR) в CGI-скрипте? Я пробовал что-то вроде этого:

 cgi.out("status" => "303", "Connection" => "close", "Content-Length" => 1, "Location" => 'http://www.google.com') {' '}
 

но это не сработало.

Комментарии:

1. Можете ли вы вставить полный сценарий, который вы использовали, или это то, что вы вставили? Это кажется неполным.

2. Это все, что имело какое-то отношение к перенаправлению. Это может быть бессмыслицей, но я понятия не имею, как это сделать, и это все, что я нашел в Google.

Ответ №1:

Вероятно, вам следует использовать .htaccess директиву уровня или какую-либо директиву конфигурации веб-сервера, если вы просто перенаправляете. Использование CGI для непрограммных задач является массовым излишеством.

Обычно вам может сойти с рук что-то подобное, если вы используете Apache:

 RedirectMatch permanent /(.*) http://www.google.com/
 

Другие типы серверов имеют эквивалентные директивы.

Если вы используете Ruby CGI, я думаю, вы делаете это неправильно. Не так сложно обернуть что-то простое в Rack или использовать Sinatra, чтобы создать чистую среду для работы. Это быстрее, чем CGI, более гибко и, что самое главное, хорошо работает.