GNU/Linux >> Linux の 問題 >  >> Debian

Nginxを使用してWordPressをインストールし、Debian11でSSLを暗号化する方法

WordPressは、インターネット上で最も人気のあるWebサイトプラットフォームです。これは無料のオープンソースであり、ほとんどすべてのWebホスティングサービスでうまく機能するため、インストールと使用が最も簡単なサービスの1つです。

Webホスティングをまだお持ちでない場合は、WordPressをローカルのDebianマシンまたはVPSにインストールすることをお勧めします。

ここでは、Debian11にNginxを使用してWordPressをインストールする方法を説明します。

LEMPスタックのインストール

以下のリンクをたどって、WordPressをインストールするためにDebianシステムにLEMPスタックをインストールしてください。

Debian 11にEMP(Nginx、MariaDB、PHP)をインストールする

Nginx仮想ホストのセットアップ

WordPressインストール用の仮想ホストを作成することから始めます。 Nginxのすべての仮想ホスト構成ファイルは/etc/nginx/conf.dにあります。 ディレクトリ。通常、仮想ホストファイルには、ドメイン名、ポート番号、ドキュメントルート、ログの場所、高速CGIなどが含まれます。

次のように仮定します

ドメイン名: itzgeek.net、www.itzgeek.net
ポート番号: 80
ドキュメントルート: /usr/share/nginx/www.itzgeek.net/html
ログ: /usr/share/nginx/www.itzgeek.net/logs

仮想ホスト構成を作成します。

sudo nano /etc/nginx/conf.d/www.itzgeek.net.conf

次に、次のコンテンツを上記の構成ファイルに配置します。 server_nameを変更する必要があります 要件に応じて。

server {
	server_name itzgeek.net www.itzgeek.net;
	root /usr/share/nginx/www.itzgeek.net/html;

	index index.php index.html;

	access_log /usr/share/nginx/www.itzgeek.net/logs/access.log;
	error_log /usr/share/nginx/www.itzgeek.net/logs/error.log;

	# Prevent access to hidden files
	location ~* /\.(?!well-known\/) {
		deny all;
	}

	# Prevent access to certain file extensions
	location ~\.(ini|log|conf)$ {
		deny all;
	}

        # Enable WordPress Permananent Links
	location / {
		try_files $uri $uri/ /index.php?$args;
	}

	location ~ \.php$ {
        # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
        include fastcgi_params;
        fastcgi_intercept_errors on;
        fastcgi_pass unix:/run/php/php7.4-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
	}

}

ドキュメントのルートとログのディレクトリを作成します。

sudo mkdir -p /usr/share/nginx/www.itzgeek.net/html/

sudo mkdir -p /usr/share/nginx/www.itzgeek.net/logs/

以下のコマンドを使用して、Nginx構成ファイルを確認します。

sudo nginx -t

次のような場合は、仮想ホストの構成が正しいことを意味します。

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

NginxおよびPHP-FPMサービスを再起動します。

sudo systemctl reload nginx php7.4-fpm

DNSレコードの作成

ドメインレジストラに移動し、ドメインのAおよびCNAME(wwwサブドメインを使用しない場合はオプション)レコードを作成します。通常、WordPressWebサイト用に2つのレコードを作成する必要があります。

  1. www以外のドメイン名(例:itzgeek.net)>> A サーバーIPへのレコードポイント
  2. wwwドメイン名(例:www.itzgeek.net)>> CNAME itzgeek.netへの記録ポイント

このデモでは、WordPressのWebサイトにwww.itzgeek.netでアクセスできるように、2つのレコードを作成します。

インストールLet'sEncryptSSL証明書

Certbotクライアントのインストール

Let’s Encrypt SSL証明書の生成とインストールに役立つCertbotクライアントが、Debianオペレーティングシステムのスナップパッケージとして利用できるようになりました。したがって、最初に、システムにsnapdデーモンをインストールします。

sudo apt update

sudo apt install -y snapd

次に、更新を最新バージョンにスナップします。

sudo snap install core && sudo snap refresh core

最後に、以下のコマンドを使用してCertbotクライアントをインストールします。

sudo snap install --classic certbot

sudo ln -s /snap/bin/certbot /usr/bin/certbot

SSL証明書をインストールする

以下のコマンドを使用して、Nginx Webサーバー用のLet’sEncryptSSL証明書を生成してインストールします。

sudo certbot --nginx
1.メールアドレスを入力 緊急の更新およびセキュリティ通知に関する通知を受け取るため
2。 Yと入力し、Enterキーを押します ACMEサーバーに登録するには
3。 YまたはNと入力します EFFのニュース、キャンペーン、ニュースレターに関するメールを受信する。
4。 CertbotはWordPressドメインを自動的に検出し、HTTPSをアクティブ化する許可を求めます あなたのWordPressウェブサイトのために。 1またはカンマで区切った適切な数字を入力します 複数のWebサイトがある場合。
Which names would you like to activate HTTPS for?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: itzgeek.net
2: www.itzgeek.net
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate numbers separated by commas and/or spaces, or leave input
blank to select all options shown (Enter 'c' to cancel): 1,2

SSLのインストールが完了するのを待ちます。これで、HTTPSを使用してWebサイトにアクセスできるようになります。

注: 今すぐWebサイトにアクセスすると、WordPressファイルをまだ配置していないため、403forbiddenエラーが発生します。

www以外のHTTPリクエストをNginxを使用してwwwHTTPSにリダイレクトする

www以外のHTTPサイトからWWWHTTPSサイト、つまりhttp://itzgeek.net>>https://www.itzgeek.netにトラフィックをリダイレクトするようにNginxサーバーを構成することをお勧めします。

SSL証明書の自動更新

Certbotクライアントには、systemdを介したSSL証明書の自動更新が含まれるようになりました。したがって、証明書を手動で更新する必要はありません。

NginxでWordPressをインストールする

WordPressデータベースの作成

まず、MariaDB/MySQLデータベースサーバーにログインします。

sudo mysql -u root -p

次に、データベースのユーザーとパスワードとともにWordPressインストール用のデータベースを作成します。

CREATE DATABASE wpdatabase;

CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'wppassword';

GRANT ALL PRIVILEGES ON wpdatabase.* TO 'wpuser'@'localhost';

EXIT

WordPressをダウンロード

次のコマンドを使用して、WordPressインストーラーの最新バージョンをダウンロードします。

curl -O https://wordpress.org/latest.tar.gz

次に、ダウンロードしたファイルを抽出します。

tar -zxvf latest.tar.gz

次に、ファイルをWebサイトのドキュメントルートディレクトリに移動します。

sudo mv wordpress/* /usr/share/nginx/www.itzgeek.net/html/

WordPressディレクトリの所有権とグループを更新します。

sudo chown -R www-data:www-data /usr/share/nginx/www.itzgeek.net/

WordPressのインストール

ブラウザを開き、WordPress Webサイトのドメインにアクセスして、WordPressのインストールを実行します。

https:// your-wordpress-website

1.インストール言語を選択します 続行をクリックします

2. 行こう!をクリックします

3.WordPressデータベースの詳細を入力します 次に、[送信]をクリックします

4.インストールの実行をクリックします

5. WordPressWebサイト情報を入力します 次に、WordPressのインストールをクリックします

6.ログインをクリックします WordPressのインストールを管理するためにWordPress管理バックエンドにアクセスします。または、 https:// your-wordpress-website / wp-admin にアクセスして、WordPressバックエンドにアクセスすることもできます。

WordPressウェブサイトにアクセス

これで、自分のドメイン名でサイトにアクセスできるようになります。

https:// your-wordpress-website

結論

それで全部です。 Debian11にNginxを使用してWordPressをインストールする方法を学んだことを願っています。


Debian
  1. Lets Encrypt and Secure Nginx with SSL/TLSをDebian9にインストールする

  2. Nginxを使用してUbuntu18.04にLet'sEncryptSSLをインストールする方法

  3. Debian10にNginxを使用してWordPressをインストールする方法

  1. Nginxを使用してAutomadCMSをインストールし、Debian10でSSLを暗号化できるようにします

  2. Nginxを使用してWordPressをインストールし、CentOS8でSSLを暗号化する方法

  3. Drupal 9をNginxでインストールし、Debian10でSSLを暗号化する方法

  1. Debian11にNginxとSSLを使用してAbanteCartをインストールする方法

  2. Nginxと無料でDiscourseForumをインストールする方法Debian11でSSLを暗号化する

  3. Debian11にNginxとSSLを使用してEtherpadをインストールする方法