最近、お客様から、自分のウェブサイトは海外にあるのですが、国内外のユーザーがより頻繁にアクセスするため、国内のウェブサイトが開くのが非常に遅いとのことでした。ウェブサイト www.pjcourse .com 国内のアクセス速度が向上します。彼らのプログラムはWordPressを使用しています。一般に、WordPress プラグイン テンプレートは、wprocket などのキャッシュ プラグインがインストールされている場合でも、js、css 圧縮、データベースの最適化が実行されている場合でも、大量のデータを読み込みます。実際には、Web サイトの速度は大幅には改善されません。
いくつかの簡単な分析の後、私は彼らの Web サイトを cn2 gia ライン スペース プロバイダーに移動する予定です。これが Web サイトの速度を向上させる最も早い方法かもしれません。以下は、私が実際に共有した内容の一部と、Web サイトが攻撃されたときにデータを迅速に切り替える方法です。
注: このマシンは海外に設置されていますが、403 などの Baidu スパイダー クローリング エラーが発生する可能性はほとんどありません。
1. Webサイトの現状分析
Webサイトを移転する前は、スペースはDigitaloceanに置かれており、CDNはcloudflareでした。 Digitalocean は海外では非常に優れたスペースプロバイダーですが、国内ユーザーの場合、アクセスに Cloudflare が使用されるため、速度はまだ非常に遅いです。
また、別回線のDNSを利用して解析することも可能ですが、操作が煩雑になります。したがって、この記事ではそれについては説明しません。
シークレット ブラウザ Chrome を使用すると、完全に開くまでに 6.35 秒かかることがわかります。初期のレンダリングには 4.46 秒かかりました。
さらに、ウェブマスターのホームスピードテストでも確認できます。通信回線の方が若干速いです。しかし、チャイナユニコムとチャイナモバイルの速度は明らかに4秒を超えています。
# 2. ウェブサイトの移転
スペースプロバイダーの選択については、実は、適切な安定したスペースと適切なラインを選択してください。基本的にはすべて可能です。私が今選択しているのは、レンガ職人が使用している cn2 gia ecommerce です。 cn2 gia の最大の利点は、3 つの国内ネットワークすべてへのアクセスが非常に高速であることです。そしてこの空間商が最も安定した速度でもあります。私の現在の四半期は 49.99 ドルで、実際には月額 16 ドルに相当します。
SSD: 20 GB RAID-10
RAM: 1 GB
CPU: 2x Intel Xeon
転送: 1000 GB/月
各人の状況に応じてさまざまなホストを選択できます。ただし、最初のトラフィックがそれほど大きくない場合は、特に優れたホストを購入する必要はなく、後で容量を拡張することをお勧めします。
##1. オペレーティング システムの選択
私は ubuntu 20.04 を使用しています。 php 7.4 nginx mysql。なぜこれを選ぶのでしょうか? php 7.4 は php 7.2 より 30% 高速であるためです。
2. コマンドライン
##Pagoda を使用してみてはいかがでしょうか?というのは、少し前に塔に大きな抜け穴があったからです。また、Web サイトのこの部分については、他のサードパーティ ツールの使用はできるだけ控えた方がよいと思います。さらに、構築する VPS も可能な限りクリーンで整頓されたものにすることができます。外部プログラムが少なくなります。 次のコマンド ラインは、ubuntu 20.04 に基づいています。コマンドに従ってください。基本的には何も間違っていません。 ssh root@... -p ポート番号上のアスタリスクはIPアドレス。 -p は指定されたポートです。 Bricklayer のデフォルトの SSH ポートは 22 ではないため、ここで指定する必要があります。
#ステップ 1: nginx をインストールするsudo apt updatesudo apt install nginxステップ 2: ファイアウォールをオンにする
sudo ufw アプリ リスト
sudo ufw allowed 'OpenSSH'
sudo ufw allowed 'Nginx HTTPS'
sudo ufwallow 'Nginx HTTP'
sudo ufw enable — このコマンドを入力すると、ssh 接続が中断される可能性があることを示すプロンプトが表示されます。 「y」と入力して Enter キーを押すだけです。
ステップ 3: mysql をインストールしますsudo apt install mysql-serversudo mysql_secure_installation (このステップはオプションです。これはセキュリティです)脚本)。 y を入力して Enter を押し、最も強力なパスワード 2 を選択して、新しいパスワードを入力します。このパスワードは、mysql の root パスワードです。 次に、すべてに y を選択します。 1 つは匿名ユーザーを削除すること、もう 1 つはデータベース ルートのリモート ログインを禁止すること、最後はテスト データベースを削除することです。 最後に y を選択します。スクリプトはすぐに有効になります。ステップ 4: php モジュールをインストールする
sudo apt install php-imagick php7.4-fpm php7.4-mbstring php7.4-bcmath php7.4-xml php7.4-mysql php7.4 - common php7.4-gd php7.4-json php7.4-cli php7.4-curl php7.4-zip
これはコマンドです。コード全体をコピーするだけです。これには基本的に、WordPress が使用できるすべてのモジュールが含まれています。
sudo systemctl reload php7.4-fpm nginx (再起動と設定の読み込み)
ステップ 5: Web サイト データを移動私のウェブサイトはWordPressなので、あなたのウェブサイトは別のプログラムで書かれている可能性があり、コンテンツは異なります。ここには書きません。さらに、nginx.conf
server {
listen 80;
server_name your_domain www.your_domain;
index index.html index.htm index.php;location / { try_files $uri $uri/ =404;}location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; }location ~ /\.ht { deny all;}
ステップ 6: ssl の設定とインストール
SSL を使用して暗号化します。
sudo apt install certbot python3-certbot-nginx
sudo certbot –nginx -d example.com -d www.example.com
example.com を独自のものに置き換えますWeb サイトのドメイン名。複数のサブドメインがある場合。自分で追加してください。
ここで、Cloudflare を使用している場合は、まず DNS が現在の VPS を指すようにする必要があることに注意してください。そうしないと、構成が成功しません。 CDN をオフにするには。
#最後の文を参照してください。おめでとうございます! 証明書とチェーンは次の場所に保存されました: これは、インストールが成功したことを意味します。 この証明書は 90 日間有効ですが、certbot は毎日 2 つの systemd タイマーを実行して証明書の有効性を確認し、証明書を自動的に更新します。タイマーが有効かどうかを確認する必要があります。 sudo systemctl status certbot.timer出力結果は以下の通りで正常です。#● certbot.timer - certbot を 1 日 2 回実行します
ロード済み: ロード済み (/lib/systemd/system/certbot.timer; 有効; ベンダー プリセット: 有効)
Active: アクティブ (待機中) 以降2020-05-04 月 20:04:36 UTC; 2 週間 1 日前
トリガー: 2020-05-21 木 05:22:32 UTC; 残り 9 時間
トリガー: ● certbot.service
3. 新しい Web サイトのネットワーク速度をテストします
# 国内通信を直接使用して Web サイトにアクセスすると、Web サイトの表示時間が大幅に改善されました。従来と比較すると2~3倍程度の速度アップとなっております。そしてこれが夜間の速度です。夜間のアクセス速度には全く影響ありません。
赤でマークされたアドレスを除いて、DNS 解決はまだ有効になっていません。有効になっている他の IP 速度は明らかに 2 秒以内に開かれます。
4.cloudflare を使用して DDOS 攻撃を防ぎ、攻撃と防御を素早く切り替えます
Here I am ウェブサイトの設定には Cloudflare を使用することをお勧めします。デフォルトでは、CDN は有効になっていません。つまり、ドメイン名は IP を直接指します。ただし、DDoS やその他の攻撃に遭遇した場合は、すぐに Cloudflare プロキシをオンにして、IP をバックアップ クローン スペースにポイントすることをお勧めします。 IPは隠蔽されており、大量の攻撃者の攻撃データはCloudflareによってフィルタリングされるため、応答がタイムリーであれば、Webサイトはわずか数分で復元できます。
さらに、access.log アクセス ログを通じて攻撃元 IP を特定できます。そして、Cloudflareのファイアウォールで疑わしいIPを直接フィルタリングします。たとえば、ブロック アクセス コードや検証コードを使用して、攻撃者を特定します。また、cf オプションを使用すると国全体をブロックすることもできます。
また、攻撃モードでも有効にします。中小規模の攻撃を効果的にブロックします。
記事のソース: www.pjcourse.com
以上が[チュートリアル] Wordpress の遅い国内ネットワーク速度の高速化と DDOS 攻撃を防ぐための高速 CF 切り替えの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。