はじめに
WordPress 管理画面からファイルをアップロードしようとした際、以下のエラーが発生しましたか?
辿ったリンクは期限が切れています。
The link you followed has expired.
原因と対策
結論としては、「アップロードするファイルサイズが規定値を超過している」が原因です。
対策としては、Web サーバ上の PHP 設定ファイル (php.ini) でアップロード可能ファイルサイズを変更可能です。
本記事では、php.ini を確認・修正する手順を記載します。
前提
なお、私の場合は EC2 Linux 上で WordPress をホストしています。
本記事では、EC2 へ SSH 接続して直接 php.ini を編集します。
サーバへ SSH 接続できない / 接続したくない人向け
WordPress 管理画面から php.ini を変更可能にするプラグインも存在しているようです。
検索では、「Custom PHP Settings」というプラグインがヒットしました。
アップロード可能ファイルサイズを変更する手順
php.ini のディレクトリを確認する
$ php --ini
Configuration File (php.ini) Path: /etc
Loaded Configuration File: /etc/php.ini
Scan for additional .ini files in: /etc/php.d
Additional .ini files parsed: /etc/php.d/20-bz2.ini,
...
まずは、設定ファイルの場所を確認しましょう。
→ Loaded Configuration File: /etc/php.ini
ここでは、php.ini のフルパス「/etc/php.ini」が確認できました。
php.ini を編集し、アップロードファイルの最大サイズを変更する
$ vi /etc/php.ini
次に、先ほど確認したフルパスを指定し、php.ini を編集します。
post_max_size = 64M
...
upload_max_filesize = 64M
設定すべき項目は上記 2 項目です。
アップロードしたいファイルサイズ合わせて適当な値に修正します。
ここでは、64M に設定しました。
Web サーバを再起動し、設定を反映する
$ sudo service httpd restart
続いて、httpd サービスを再起動し、設定を反映します。
なお、OS によってはコマンドを適宜変更してください。
以上で、エラーの原因が「アップロード可能最大ファイルサイズの超過」である場合は、エラーが解消されるはずです。
余談
今回のエラー、 HTTP ステータスコードを確認すると 403 forbidden なんですよね。
加えて、エラーメッセージは「辿ったリンクは期限が切れています。(The link you followed has expired.)」
一見すると、認証情報の有効切れとかを匂わせるような内容ですよね。
おかげで、私はキャッシュクリアや再ログイン等、色々試してしまいました。。
結果、ファイルサイズ超過が原因とは。。
同じ境遇の方のお役に立てれば幸いです。
コメント