PHP 7.2

WordPressにアップロードできるファイルサイズを変更する方法

ファイルをアップロードするとエラーが出る

画像をアップロードしようとしたところ、
このサイトのアップロードサイズ上限を超えています。
というエラーが出てしまいました。

  • 環境
    • Ubuntu 18.04 LTS
    • Nginx
    • PHP 7.2

原因1:Nginxのデフォルト設定

原因1はNginxのデフォルト設定で、POST最大サイズが1MBまでになっているためです。
設定ファイルを書き換えて変更します。

原因2:PHPのデフォルト設定

原因2はPHPのデフォルト設定で、アップロードできるファイルサイズが2MBまでになっているためです。
こちらも設定ファイルを書き換えて変更します。

原因1 解決方法:Nginxの設定ファイルを編集する

Nginxの設定ファイルを編集します。

$ cd /etc/nginx/
$ sudo nano nginx.conf

http {
     (-中略-)
     client_max_body_size 50M;
     #includeの前に上の1行を追記。この場合上限50MBになる。
     include /etc/nginx/conf.d/*.conf;
     (-中略-)
}

$ sudo systemctl restart nginx

原因2 解決方法:PHPの設定ファイルを編集する

PHPの設定ファイルを編集します。

注意点

設定するサイズは以下の大小関係を満たしてください。
memory_limit>post_max_size>upload_max_filesize

$ cd /etc/php/7.2/fpm
$ sudo nano php.ini

#以下の設定項目を検索して変更する。

upload_max_filesize = 25M
#アップロードできるファイルサイズの上限。この場合25MBになる。

post_max_size = 50M
#POSTできるファイルサイズの上限。この場合50MBになる。

memory_limit = 256M
#PHPが使えるメモリサイズの上限。この場合256MBになる。(初期値の128Mでも良いらしい。)

$ sudo systemctl restart php7.2-fpm
$ sudo systemctl restart nginx

この2点を変更することで、エラーが出ずにアップロードできる様になるはずです。
お疲れ様でした。

Ubuntu Server 18.04 LTS WordPress インストール

時間が流れるのは早い

新年明けてからバタバタと過ごしてブログ更新をサボっていたら3月になってしまいました。時間が流れるのは早いと感じているところです。

今日は過去に書き溜めていた記事を公開します。

本題はここから

※注意!
この記事はWordPress5.xのリリース前に書いたため、4.9.8でのインストール手順となっております。

Ubuntu Server 18.04 LTS でのWordPressのインストールを備忘録としてまとめておきたいと思います。

今回の環境

WordPressのダウンロード

WordPress公式サイトからダウンロードリンクをコピーしておきます。

$ cd /var/www/html
$ sudo mkdir www.hoge.hoge
$ cd www.hoge.hoge
$ sudo wget https://ja.wordpress.org/wordpress-4.9.8-ja.zip

ダウンロードしたファイルを解凍

$ cd /var/www/html/www.hoge.hoge
$ sudo apt install unzip
$ sudo unzip wordpress-4.9.8-ja.zip

#wordpressフォルダが作られる
$ ls

パーミッションと所有者・グループを変更

$ cd /var/www/html/www.hoge.hoge
$ sudo chmod 775 -R wordpress

#www-dataはNginxのユーザを設定
$ sudo chown www-data:www-data -R wordpress

Nginxの設定ファイルを編集する

$ cd /etc/nginx/sites-available
$ sudo nano default

#以下の一行を検索しコメントアウト
#root /var/www/html;

#WordPressをインストールしたディレクトリを追記する
root /var/www/html/www.hoge.hoge/wordpress;

#index.phpを追記する
index index.html index.htm index.nginx-debian.html index.php;

$ sudo systemctl restart nginx

Adminerを一時的にWordPressフォルダに入れる

Adminerインストールの過去記事はこちら
Ubuntu Server 18.04 LTS Adminer インストール

$ cd /var/www/html
$ sudo cp adminer.php /var/www/html/www.masa10.hoge/wordpress

AdminerでWordPress用のデータベースを作成

ウェブブラウザで”サーバ名/adminer.phpにアクセス

MariaDBのユーザ名とパスワードを入れてログインする。

データベースを作成をクリック

空欄に任意のデータベース名を入力
照合順序は”utf8_general_ci”を選択

データベース作成ができました

WordPressのインストール

ウェブブラウザで”サーバ名”にアクセス

さあ、始めましょう
をクリック

先ほど、Adminerで作成したデータベース名など、データベースに関する情報を入力する

データベースに接続できると、この様な画面になるので
インストール実行をクリック

WordPressに関する情報を入力します。
入力後、”WordPressをインストール”をクリック

インストールが完了しました。
ログインをクリック

ログイン画面になるので先ほど設定したユーザ名とパスワードでログインします。

ダッシュボード画面になればWordPressインストール完了です。

【重要】一時的に入れたAdminerを削除する

Adminerを誰でもアクセスできる状態にしておくのは、セキュリティ的に問題があるので削除します。

$ cd /var/www/html/www.hoge.hoge/wordpress
$ sudo rm adminer.php

以上でWordPressのインストール完了です。
お疲れ様でした。

Ubuntu Server 18.04 LTS Nginx環境にPHP 7.2をインストール

Ubuntu Server 18.04 LTS のNginx環境でのPHPのインストールを備忘録としてまとめておきたいと思います。

php,php-fpmなどのインストール

$ sudo apt install php php-fpm php-mysql php-gettext php-common php-mbstring

PHP設定ファイルの編集

$ cd /etc/php/7.2/fpm/
$ sudo nano php.ini

#検索して編集
cgi.fix_pathinfo=0

Nginxに設定する

$ cd /etc/nginx/sites-available/
$ sudo nano default

#以下の位置に追記する
(-中略-)
		# pass PHP scripts to FastCGI server
(-中略-)
		location ~ \.php$ {
			try_files $uri =404;
			fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
			fastcgi_index index.php;
			fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
			include fastcgi_params;
		}

$ sudo systemctl restart nginx

PHPテストファイルを作成

$ cd /var/www/html
$ sudo nano test.php

#以下の一行を記述
<?php phpinfo(); ?>

ウェブブラウザで”サーバ名/test.php”にアクセスして、PHP設定情報のページが表示されれば完了です。
お疲れ様でした。