以前、私は自分で WordPress を構築していましたが、当時はサードパーティの仮想ホストを使用していたため、1 台のマシンに数十の Web サイトが存在することもありました。当時、仮想マシンはまだ物理的な分離を実現しておらず、1 つの Web サイトがリソースを占有すると、すべての Web サイトがクラッシュする可能性がありました。 最近、Alibaba Cloud ECS 上に独立した WordPress を構築してみて、その構築過程を記録しました。 もともと私は、Apache を WordPress のコンテナとして使用し、Apache への直接のリバース プロキシとして nginx を使用することを考えていました。しかし、Apache を使ってみて問題が見つかりました。リバースプロキシとして nginx を直接使用し、Apache に切り替えると、疑似静的 URL にアクセスできなくなったようです。URL ごとに nginx の場所を設定する必要があるようでした。面倒すぎると感じたので、諦めました。 もちろん、他の解決策もあるかもしれませんが、試していません。後で調べたところ、nginx はサードパーティのプラグインを使用して PHP をサポートできることがわかりました。 nginx をコンテナとして直接使用することにも利点があります。デプロイが比較的簡単で、単一の nginx コンテナを通じて複数の Web サイトを直接デプロイできます。 1. ドメイン名の購入 これについては詳しく説明しません。ドメイン名プラットフォームにアクセスしてドメイン名を申請するだけです。 2.MySQLのインストール MySQL のインストール方法についてはすでに説明しました。詳細はこちらをご覧ください。インストールが完了したら、WordPress 用に別のアカウントを作成する必要があります。なぜ別のアカウントを作成する必要があるのでしょうか?これは主にセキュリティ上の理由によるものです。WordPress が攻撃され、ルート アカウントを使用すると、データベース内のすべてのテーブルが公開されます。 // wordpress ユーザーを作成し、パスワードを設定します。パスワードはランダムに生成し、大文字と小文字、数字、特殊文字を組み合わせて 8 文字以上にすることをお勧めします。CREATE USER 'wordpress'@'%' IDENTIFIED BY 'password'; //WordPress アカウントに、選択、削除、更新、挿入、作成、変更など、すべての操作権限を付与します。GRANT all ON wordpress.* TO 'wordpress'@'%'; 権限に関する詳細情報は、こちらをご覧ください。 3. nginxのインストール Nginx は yum を使用してインストールされますが、非常に簡単です。 インストール: yum -y nginx をインストールします。 起動する: systemctl で nginx.service を起動します。 2 つのステップで nginx のインストールが完了します。 4. PHPをインストールする 4.1 PHPのインストール yum -y php をインストールします。 PHP のインストールは非常に簡単です。インストールが完了したら、次のコマンドを実行してバージョンを表示します。バージョンが表示されれば、インストールが正しいことがわかります。 php -v; 4.2 php-fpmのインストール PHP に加えて、fast-cgi と php-fpm の 2 つも必要です。それで、これら 2 つとは何でしょうか?詳細を知りたい場合は、こちらをご覧ください。簡単に言うと、fpm は fastcgi のマネージャーです。これまでは、php ファイルを正しく解析するために fpm をインストールする必要があることを知らず、長い間苦労していました。 yum で php-fpm をインストールします。 //インストールが成功したかどうかを確認します php-fpm -v; php-fpmを起動する systemctl で php-fpm を起動します。 デフォルトでは、fpm はポート 9000 を占有します。 5. WordPressをインストールする https://wordpress.org/latest.tar.gz をダウンロードしてください。 //解凍 tar -xzf latest.tar.gz -C /var/www/html; 解凍後、:/wordpress/wp-config-sample.php ファイルを見つけて、データベース名、ユーザー名、パスワードを変更します。フィールドは次のとおりです。 // ** MySQL 設定 - この情報は Web ホストから取得できます ** // /** WordPress のデータベース名 */ define('DB_NAME', 'データベース名'); /** MySQL データベースのユーザー名 */ define('DB_USER', 'ユーザー名'); /** MySQL データベースのパスワード */ define('DB_PASSWORD', 'パスワード'); /** MySQL ホスト名 */ define('DB_HOST', 'あなたのホスト'); 変更が完了したら、wp-config-sample.php のファイル名を wp-config.php に変更します。 6. nginxを設定する 以下は私の設定です。参考にしてください。 # * 公式英語ドキュメント: http://nginx.org/en/docs/ # * 公式ロシア語ドキュメント: http://nginx.org/ru/docs/ アップストリームphp { #サーバー unix:/tmp/php-cgi.socket; #fpmのデフォルトポート9000を指定します。 サーバー 127.0.0.1:9000; } サーバー{ 聞く 80 ; 聞く [::]:80 ; サーバー名 www.domain.com; ルート /web/www.domain.com/; インデックスindex.php; 場所 ~ \.php$ { #注意: php.ini に「cgi.fix_pathinfo = 0;」と記述する必要があります fastcgi.conf をインクルードします。 fastcgi_intercept_errors をオン; fastcgi_passphp; } # デフォルトのサーバー ブロックの構成ファイルを読み込みます。 /etc/nginx/default.d/*.conf を含めます。 } 7. セキュリティ設定 世界中のウェブサイトの約 20% が WordPress システムを使用しており、WordPress はハッカー攻撃の標的にもなっています。個人でも企業でも、セキュリティの問題は無視できません。一般ユーザーがセキュリティ保護を迅速に強化できる簡単な方法はありますか?いくつかのセキュリティ プラグインを調べたところ、セキュリティ戦略の改善に役立つプラグインが 1 つ見つかりました。そのプラグインは、All In One WP Security & Firewall です。このプラグインは比較的シンプルで、一般ユーザーにとって使いやすいです。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: Vueはクリックを実装し、イベントオブジェクトとカスタムパラメータを同時に渡します。
>>: Mysql5.7 サービスを開始できません。グラフィカル ソリューション チュートリアル
この記事では、Docker で構築された Laravel および Vue プロジェクトの開発環境を紹...
目次1. はじめに2. ユーザーテーブルを準備する2.1 グループ化ルール2.2 グループの使用2....
1. div css マウスの手の形は cursor:pointer; です。 2. HTML の相...
NULL 値によると、MySQL の NULL 値は単にデータがないことを意味します。NULL 値は...
概要: MySQL のパフォーマンス最適化について話すとき、誰もがクエリ パフォーマンスを向上させる...
目次1.1. IP経由のコンテナ間のネットワークアクセス1.2. コンテナ名またはコンテナIDによる...
app.js: スタートアップファイル、またはエントリファイルpackage.json: プロジェク...
今日、問題が発生しました: MySQL の insert into、update、delete ステ...
方法1: SET PASSWORDコマンドを使用する mysql -u ルート mysql> ...
目次1. JavaScriptはシングルスレッドです1. 同期タスク2. 非同期タスク2. タスクキ...
Reactのdiffアルゴリズムの理解diffアルゴリズムは、 Virtual DOMの変更された部...
Nginx では、URL のパス パラメータに基づいて、到達不可能なアップストリームに動的に転送する...
最近、小さなプログラムの開発を勉強して見直しており、学習結果のいくつかをメモしています。公式の We...
目次導入スクロール要素.スクロール()要素.scrollHeight/scrollWidth要素.s...
コードをコピーコードは次のとおりです。 <html> <!--混合フレームレイアウ...