@php
$fromSetup = $fromSetup ?? false;
// 「DNSとは?」ツールチップ(HTML表示)。各ドメイン行の展開内でも使う。
$dnsTipHtml = 'DNSとは?
'
.'DNS(ディーエヌエス)は、かんたんに言うと「ドメイン名(example.com)を、どのサービスに使うか決める電話帳のような設定」です。'
.'
'
.'この画面で出る文字(DKIM/DMARCのレコード)を、ドメインを借りている会社の『DNS』『DNSレコード』の画面に追加します。'
.'
'
.'※入力欄の名前や、レコード名を「全部(_dmarc.example.com)」入れるか「一部(_dmarc)」だけ入れるかは、会社によって違います。';
@endphp
まだドメインがありません
上の 「追加」 からドメインを登録すると、ここにコピー用の文字が出ます。それをドメイン会社の「DNS」画面に貼り付けるのが次のステップです。
| ドメイン | 状態 | 操作 | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
{{ $domain->domain }}
クリックで DNS 設定を表示
|
{{ $domain->status === 'active' ? '有効' : '設定中' }} | ||||||||||||||
@php
$sel = $domain->dkim_selector ?? '';
$signHost = (string) config('putage.dkim_signing_hostname');
$sendingIp = trim((string) config('putage.sending_ip'));
$spfIncludeDomain = trim((string) config('putage.spf_include_domain'));
$cnameValue = $sel !== '' ? ($sel.'.'.$signHost) : '';
$recordHostFqdn = $sel !== '' ? ($sel.'._domainkey.'.$domain->domain) : '';
$recordHostRelative = $sel !== '' ? ($sel.'._domainkey') : '';
$spfHostFqdn = $domain->domain;
$spfValue = '';
if ($spfIncludeDomain !== '') {
$spfValue = 'v=spf1 include:'.$spfIncludeDomain.' -all';
} elseif ($sendingIp !== '') {
$spfValue = 'v=spf1 ip4:'.$sendingIp.' -all';
}
$dnsItemsByKey = [];
$dnsPersisted = $domain->dns_last_check_result;
if (is_array($dnsPersisted) && ! empty($dnsPersisted['items'])) {
foreach ($dnsPersisted['items'] as $it) {
$k = (string) ($it['key'] ?? '');
if ($k !== '') {
$dnsItemsByKey[$k] = $it;
}
}
}
$dmarcTxtLine = \App\Support\MailDmarcSpec::expectedTxt();
$dmarcPolicy = \App\Support\MailDmarcSpec::policy();
@endphp
このドメインの DNS 設定値
ドメイン登録:
{{ $domain->created_at ? $domain->created_at->timezone(config('app.timezone'))->format('Y/m/d H:i') : '—' }}
最終確認:
{{ $domain->dns_last_checked_at ? $domain->dns_last_checked_at->timezone(config('app.timezone'))->format('Y/m/d H:i') : '—' }}
「設定確認」はメールの ping ではなく、このサーバーからの DNS 問い合わせです。 DMARC だけ OK で DKIM/SPF が未設定になることもあり得ます(レコードごとに伝わり方が違う/運用側 TXT 未登録/include 先がまだ等)。 数分後にもう一度試すか、「未設定」の行のすぐ下に出る短文を確認してください。
この認証ドメインでのテスト送信
DNS を保存しても、反映に時間がかかることがあります。まずはメールが届くかをここで確認します。 @if($domainTestAccounts->isEmpty())
まだテストができません。先に {{ $fromSetup ? 'メール設定' : '送信用アカウント一覧' }} → 「各種設定」で、送信元メールアドレスを @ 以降が
@else
{{ $domain->domain }} になるようにして保存してください。例: info@__DOMAIN__ / mail@__DOMAIN__ / noreply@__DOMAIN__保存後、この行を開き直すとここにテスト欄が出ます。
「届くかどうか」の確認です。届いたら迷惑メールも確認してください。DKIM/DMARC の反映は時間がかかることがあります。
@endif
|
|||||||||||||||