Kompx.com or Compmiscellanea.com

Imapsync. Перенос почты

Операционные системы : Linux

Перенос почты c одного IMAP сервера на другой с помощью imapsync [ 1 ] / Linux, командная строка:

imapsync --host1 imap.this.com --user1 email@example.com --passfile1 /home/user/imap/passwordfile1 --ssl1 --host2 imap.another.com --user2 email@example.com --passfile2 /home/user/imap/passwordfile2 --ssl2 --skipsize --allowsizemismatch

- Имеется сайт example.com и почтовый ящик email@example.com на сервере некоей хостинговой компании. IMAP сервер: imap.this.com. IMAP сервер поддерживает SSL.

- Осуществляется перенос сайта example.com к другому хостеру. Соответственно, и почтового ящика email@example.com со всем его содержимым и с сохранением структуры папок. IMAP сервер другого хостинг-провайдера: imap.another.com. IMAP сервер поддерживает SSL.

1. Создать почтовый ящик email@example.com и пароль к нему на сервере той хостинговой компании, куда происходит перенос.

2. Создать два текстовых файла в папке /home/user/imap/: passwordfile1 с паролем к почтовому ящику на первом IMAP сервере и passwordfile2 с паролем к почтовому ящику на втором IMAP сервере.

3. chmod 600 /home/user/imap/passwordfile1

4. chmod 600 /home/user/imap/passwordfile2

5. Установить imapsync

6. Запустить imapsync с соответствующими параметрами и данными

Imapsync переносит почту с сохранением структуры папок с imap.this.com на imap.another.com. SSL используется для шифрования данных в процессе передачи, а пароли сохранены в файлах, защищенных установкой прав доступа chmod 600.


Перенос почты между двумя сервисами электронной почты может потребовать использования дополнительных параметров [ 2 ] imapsync. Например, при переносе содержимого одного почтового ящика Gmail.com на другой необходимо указать "--port1" и "--port2":

imapsync --host1 imap.gmail.com --port1 993 --user1 email1@gmail.com --passfile1 /home/user/imap/passwordfile1 --ssl1 --host2 imap.gmail.com --port2 993 --user2 email2@gmail.com --passfile2 /home/user/imap/passwordfile2 --ssl2 --skipsize --allowsizemismatch


[ 1 ]

Простой и обычный случай: содержимое одного электронного почтового ящика переносится на другой - пустой, находящийся на другом сервере. Но могут быть и более сложные ситуации: Gmail to Google Apps Email Migration and Moving to Google Apps with imapsync.

[ 2 ]

Другие параметры: Migrate mail from one server to another with imapsync and imapsync(1) - Linux man page.


Aliosque subditos et thema

 

Редирект с HTTP на HTTPS в .htaccess

 

Редирект с HTTP на HTTPS в случае, когда веб-сервер, выдающий страницы, находится за обратным прокси-сервером или балансировщиком нагрузки. Веб-серверы: Apache + nginx. Поддержка SSL включена. SSL-сертификат приобретен, одобрен и установлен. То есть, все настроено и работает. Так что осталось только сделать редирект с HTTP на HTTPS. Директивы для файла .htaccess: RewriteEngine On RewriteCond %{HTTP_HOST} !^www\. [NC] RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L] RewriteCond %{HTTP:X_FORWARDED_PROTO} !https [NC] RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L] Редирект с HTTP на HTTPS -- Включить работу механизма преобразования: RewriteEngine On -- Если доменное имя без www: RewriteCond %{HTTP_HOST} !^www\. [NC] -- Тогда заменить его на домен с www: RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L] -- Если HTTPS отсутствует: RewriteCond %{HTTP:X_FORWARDED_PROTO} !https [NC] -- Тогда заменить домен без HTTPS доменом с HTTPS: RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L] Примечания 1. X_FORWARDED_PROTO может называться X-Forwarded-Proto или еще как-нибудь иначе. От обратного прокси-сервера или балансировщика нагрузки надо получить сведения о том первоначальном запросе, который он получает. Обратные прокси-сервера или балансировщики нагрузки могут предоставлять веб-серверу эту информацию. Может быть отправлен заголовок X_FORWARDED_PROTO или X-Forwarded-Proto или называемый как-то иначе, содержащий название протокола (HTTP или HTTPS). Так обычно. Но не всегда. Поэтому в каком-то числе случаев как именно получить название протокола возможно придется выяснять экспериментальным путем. 2. Другим вариантом может быть просто установить переменную среды (если для данного сервера это возможно): SetEnvIf X_FORWARDED_PROTO https HTTPS=on Тогда директивы для файла .htaccess будут такими: RewriteEngine On SetEnvIf X_FORWARDED_PROTO https HTTPS=on RewriteCond %{HTTP_HOST} !^www\. [NC] RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L] RewriteCond %{HTTP:HTTPS} !on [NV] RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L] 3. Документация Apache Module mod_rewrite (in English): http://httpd.apache.org/docs/current/mod/mod_rewrite.html

Оформление нумерованных списков

 

Цифры-маркеры нумерованного списка, выделенные жирным начертанием без использования дополнительных тегов HTML: List item List item List item HTML / XHTML. Code: <ol> <li>List item</li> <li>List item</li> <li>List item</li> </ol> CSS. Code: ol {counter-reset: item;} ol li {display: block;} ol li:before {content: counter(item) ". "; counter-increment: item; font-weight: bold;} В настоящий момент нет явного способа форматировать только цифры-маркеры нумерованного списка. Но вместо стандартного механизма автоматической нумерации нумерованных списков можно использовать CSS счётчик. Это позволяет оформлять конкретно маркеры. Как в примере, где числа, отмечающие начало элементов нумерованного списка выделены жирным начертанием. С помощью этого способа так же возможно вместо точки после цифры использовать другие знаки. Например, закрывающую скобку " ) ". Или управлять пробелами между цифрой, разделительным знаком и содержимым, следующим за ними в элементе нумерованного списка. [ 1 ] As well as Netscape 9.0+. [ 2 ] As well as Netscape 9.0+.