Новые файлы для настройки почты
This commit is contained in:
parent
27c4d64d73
commit
e695b9bc01
4 changed files with 97 additions and 9 deletions
82
YANDEX_MAIL_SETUP.md
Normal file
82
YANDEX_MAIL_SETUP.md
Normal file
|
|
@ -0,0 +1,82 @@
|
||||||
|
# ============================================
|
||||||
|
# НАСТРОЙКА ПОЧТОВОГО СЕРВЕЯ ЯНДЕКС
|
||||||
|
# ============================================
|
||||||
|
|
||||||
|
## Вариант 1: Яндекс Mail (бесплатный)
|
||||||
|
|
||||||
|
### Настройки SMTP Яндекса:
|
||||||
|
- SMTP_HOST = smtp.yandex.ru
|
||||||
|
- SMTP_PORT = 587
|
||||||
|
- FROM_EMAIL = ваш_логин@yandex.ru
|
||||||
|
- FROM_NAME = Автоюрист Сургут
|
||||||
|
|
||||||
|
### Как получить пароль приложения:
|
||||||
|
|
||||||
|
1. Перейдите https://id.yandex.ru/security/
|
||||||
|
2. Войдите в аккаунт Яндекса
|
||||||
|
3. Перейдите в "Безопасность" → "Пароли приложений"
|
||||||
|
4. Нажмите "Создать пароль приложения"
|
||||||
|
5. Введите название (например, "SMTP сайт")
|
||||||
|
6. Выберите "Почта (SMTP)"
|
||||||
|
7. Скопируйте полученный пароль (16 символов)
|
||||||
|
|
||||||
|
### Значения для .env:
|
||||||
|
```
|
||||||
|
SMTP_HOST=smtp.yandex.ru
|
||||||
|
SMTP_PORT=587
|
||||||
|
FROM_EMAIL=ваш_логин@yandex.ru
|
||||||
|
FROM_NAME=Автоюрист Сургут
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Вариант 2: Яндекс 360 (для бизнеса)
|
||||||
|
|
||||||
|
Если используете Яндекс 360 для бизнеса (домен avtourist-surgut.ru):
|
||||||
|
|
||||||
|
### Настройки SMTP:
|
||||||
|
- SMTP_HOST = smtp.yandex.ru
|
||||||
|
- SMTP_PORT = 587
|
||||||
|
- FROM_EMAIL = info@avtourist-surgut.ru
|
||||||
|
- FROM_NAME = Автоюрист Сургут
|
||||||
|
|
||||||
|
### Как получить пароль:
|
||||||
|
|
||||||
|
1. Перейдите https://domain.yandex.ru/ (для вашего домена)
|
||||||
|
2. В разделе "Почта" → "Настройки почтового сервера"
|
||||||
|
3. Включите SMTP
|
||||||
|
4. Создайте пароль для внешних приложений
|
||||||
|
|
||||||
|
### Значения для .env:
|
||||||
|
```
|
||||||
|
SMTP_HOST=smtp.yandex.ru
|
||||||
|
SMTP_PORT=587
|
||||||
|
FROM_EMAIL=info@avtourist-surgut.ru
|
||||||
|
FROM_NAME=Автоюрист Сургут
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Проверка настроек
|
||||||
|
|
||||||
|
После настройки проверьте отправку писем:
|
||||||
|
1. Создайте тестовый файл send-test.ts
|
||||||
|
2. Запустите: npx tsx send-test.ts
|
||||||
|
|
||||||
|
Или через форму консультации на сайте.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Ошибки и решения
|
||||||
|
|
||||||
|
### "535 Incorrect authentication data"
|
||||||
|
- Неправильный пароль приложения
|
||||||
|
- Проверьте, что пароль создан именно для "Почта (SMTP)"
|
||||||
|
|
||||||
|
### "530 5.7.0 Must issue a STARTTLS command first"
|
||||||
|
- Неправильный порт
|
||||||
|
- Используйте порт 587 (не 465)
|
||||||
|
|
||||||
|
### "Authentication required"
|
||||||
|
- Не включена двухэтапная аутентификация в Яндексе
|
||||||
|
- Включите её в https://id.yandex.ru/security/2fa/
|
||||||
|
|
@ -450,6 +450,12 @@ const {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@media (min-width: 768px) {
|
||||||
|
.steps-section {
|
||||||
|
padding-bottom: 3rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@media (max-width: 1024px) {
|
@media (max-width: 1024px) {
|
||||||
.steps-container {
|
.steps-container {
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,11 @@
|
||||||
import nodemailer from 'nodemailer';
|
import nodemailer from 'nodemailer';
|
||||||
import type { EmailOptions } from '../globalInterfaces';
|
import type { EmailOptions } from '../globalInterfaces';
|
||||||
|
|
||||||
const SMTP_HOST = import.meta.env.SMTP_HOST || 'localhost';
|
const SMTP_HOST = import.meta.env.SMTP_HOST; // || 'localhost';
|
||||||
const SMTP_PORT = import.meta.env.SMTP_PORT || 1025;
|
const SMTP_PORT = import.meta.env.SMTP_PORT; // || 1025;
|
||||||
const FROM_EMAIL = import.meta.env.FROM_EMAIL || 'noreply@avtourist-surgut.ru';
|
const FROM_EMAIL = import.meta.env.FROM_EMAIL; // || 'noreply@avtourist-surgut.ru';
|
||||||
const FROM_NAME = import.meta.env.FROM_NAME || 'Автоюрист Сургут';
|
const FROM_NAME = import.meta.env.FROM_NAME; // || 'Автоюрист Сургут';
|
||||||
const SITE_URL = import.meta.env.SITE_URL || 'http://localhost:4321';
|
const SITE_URL = import.meta.env.SITE_URL; // || 'http://localhost:4321';
|
||||||
|
|
||||||
let transporter: nodemailer.Transporter | null = null;
|
let transporter: nodemailer.Transporter | null = null;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
import type { APIRoute } from 'astro';
|
import type { APIRoute } from 'astro';
|
||||||
import nodemailer from 'nodemailer';
|
import nodemailer from 'nodemailer';
|
||||||
|
|
||||||
const POCKETBASE_URL = import.meta.env.POCKETBASE_URL || 'http://localhost:8090';
|
const POCKETBASE_URL = import.meta.env.POCKETBASE_URL; // || 'http://localhost:8090';
|
||||||
const SMTP_HOST = import.meta.env.SMTP_HOST || 'localhost';
|
const SMTP_HOST = import.meta.env.SMTP_HOST; // || 'localhost';
|
||||||
const SMTP_PORT = import.meta.env.SMTP_PORT || '1025';
|
const SMTP_PORT = import.meta.env.SMTP_PORT; // || '1025';
|
||||||
const NOTIFY_EMAIL = import.meta.env.NOTIFY_EMAIL || 'info@avtourist.ru';
|
const NOTIFY_EMAIL = import.meta.env.NOTIFY_EMAIL; // || 'info@avtourist.ru';
|
||||||
|
|
||||||
const transporter = nodemailer.createTransport({
|
const transporter = nodemailer.createTransport({
|
||||||
host: SMTP_HOST,
|
host: SMTP_HOST,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue