Исправление битых ссылок с помощью mod_rewrite

Недавно я по техническим и политическим причинам перенёс свой скрипт поиска на ftp сервере из

ffsdmad.homelinux.org/cgi-bin/python/ffcms/fftp.py в ffsdmad.homelinux.org/cgi-bin/fftp/fftp.py

сообщил заинтересованным об изменениях и пошёл дальше, но тут обнаружил что google проиндексировал этот сервис

а так как там с помощью истории поиска можно найти массу информации для индексирования я захотел чтобы работа гугла не пропала зря

Для этого необходимо сделать так чтобы посетитель зайдя с гугла по ссылке ffsdmad.homelinux.org/cgi-bin/python/ffcms/fftp.py?q=%avi&p=13

попадал на страницу ffsdmad.homelinux.org/cgi-bin/fftp/fftp.py?q=%avi&p=13

сделаеть это можно с помощью mod_rewtite, созадём файл

vim cgi-bin/.htaccess

и заполняем его так

AddDefaultCharset UTF-8
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase    /cgi-bin/
# выявляем запросы к старому скрипту
RewriteCond %{THE_REQUEST}    GET\ /cgi-bin/python/ffcms/fftp.py
# подменяем путь к статорму скрипту новым путём, и передаём переменные запроса
RewriteRule ffcms/fftp.py /cgi-bin/fftp/fftp.py\?%{QUERY_STRING}  [R]
</IfModule>

Опциея [R] включает видимое перенаправление в отличии от опции [L]

Таким образом из гугла человек пройдёт по трём ссылка

  • ffsdmad@ffsdmad:/home/httpd/rekoweb.ru/cgi-bin/fftp$ wget "http://www.google.com/url?sa=t&source=web&ct=res&cd=4&url=http%3A%2F%2Fffsdmad.homelinux.org%2Fcgi-bin%2Fpython%2Fffcms%2Ffftp.py%3Fq%3D%25avi%26p%3D13&ei=gOt6SZ-sDcmH-gbMp8DkDw&usg=AFQjCNEYAr9F8jqtV5Xn0Gex_809cK61zg&sig2=6W9963OeXEmNyNvztj4pYA" -O /dev/null
  • --13:46:02--  http://www.google.com/url?sa=t&source=web&ct=res&cd=4&url=http%3A%2F%2Fffsdmad.homelinux.org%2Fcgi-bin%2Fpython%2Fffcms%2Ffftp.py%3Fq%3D%25avi%26p%3D13&ei=gOt6SZ-sDcmH-gbMp8DkDw&usg=AFQjCNEYAr9F8jqtV5Xn0Gex_809cK61zg&sig2=6W9963OeXEmNyNvztj4pYA
  •            => `/dev/null'
  • Преобразование адреса www.google.com... 66.249.91.147, 66.249.91.99, 66.249.91.103, ...
  • Устанавливается соединение с www.google.com|66.249.91.147|:80... соединились.
  • Запрос HTTP послан, ожидание ответа... 302 Found
  • Адрес: http://ffsdmad.homelinux.org/cgi-bin/python/ffcms/fftp.py?q=%avi&p=13 [переход]
  • --13:46:03--  http://ffsdmad.homelinux.org/cgi-bin/python/ffcms/fftp.py?q=%25avi&p=13
  •            => `/dev/null'
  • Преобразование адреса ffsdmad.homelinux.org... 94.181.225.183
  • Устанавливается соединение с ffsdmad.homelinux.org|94.181.225.183|:80... соединились.
  • Запрос HTTP послан, ожидание ответа... 302 Found
  • Адрес: http://ffsdmad.homelinux.org/cgi-bin/fftp/fftp.py?q=%2525avi&p=13 [переход]
  • --13:46:03--  http://ffsdmad.homelinux.org/cgi-bin/fftp/fftp.py?q=%2525avi&p=13
  •            => `/dev/null'
  • Повторное использование соединения с ffsdmad.homelinux.org:80.
  • Запрос HTTP послан, ожидание ответа... 200 OK
  • Длина: нет информации [text/html]
  •     [ <=>                                                                                                              ] 3 512        --.--K/s             
  • 13:46:04 (98.37 KB/s) - `/dev/null' сохранён [3512]

похожие страницы

  1. Защита от спамеров с помощью mod_rewrite
  2. Уроки Gimp: Исправление искажения оптики. Изменение перспективы. Цветокоррекция.
  3. Пример использования mod_rewrite
  4. Пример использование apache2 mod_rewrite в Ubuntu
  5. Интересные поисковые позиции