最近、オススメ漫画記事を書き内部リンクカードに東京卍リベンジャーズの記事を貼り付けようと、管理画面から編集を開き、URLを貼った所、上記のエラーが発生してしまいました。
Google先生で調べた所、記事のPHPメモリがオーバーすると出るエラーと判明したので直し方を調べてみたら、、、、、、
全く何を説明しているのか分からない!!!
注意深く、内容を読んでも訳の分からない単語のオンパレード、、、笑
私はまだブログを始めて約半年のペーパーブロガーなので、分からない単語が多いのは仕方ない事だと思いましたが、それにしても分からない笑
ほぼほぼ、自分で調べてブログをやっており、周りの人に聞こうにも詳しい人がいない、、、詰んだ、、と悩んでいました。
仕方ないので、分からない単語を調べていくと、PHPメモリ上限を上げるにはFTPソフトを使って直すらしいと分かったので、さっそくFTPソフトをダウンロードしようとしたのですが、そこでもまた問題が発生、、、、、
(FTPソフト説明もあるので、分からない方も安心してください!)
辛すぎる、、笑(ダウンロード方法も後ほど出てきます)
Google先生でPHPを調べても、FTPソフトを使える前提の説明なので、初心者の私にはわかりませんでしたが、何とか自力で調べて直せたので今回は一から説明する記事を書いてみました!
同じ初心者でPHPメモリで悩んでいる方の力になれば、幸いです!
※ここで紹介する方法や解説は全て独学で間違っている点があるかもしれませんが、その点を理解した上で参考程度にご覧ください!
※間違っている点に気が付いた方はお手数ですが、お問い合わせフォームから連絡を頂けると助かります。
それでは、初めにどんなエラーが出たのか?PHPメモリとは?から見ていきましょう!!
※記事内で使用している画像・リンク先は公式又はフリー素材画像を使用しています。
新しいエラー・PHPメモリとは?
エラー内容は以下の通り
(Fatal error: Allowed memory size of 52428000 bytes exhausted(tried to allocate 69632 bytes)in/homeillc-next.com*******/******** line 235)
訳すと、貴方のサイトのこのページに致命的なエラーが発生しました!235行目です。
という感じですね、、たぶん笑 (*の所は貴方のサイトのファイル名などが書かれているはず)
メモリーと書いてある通り、PHPメモリーオーバーが原因らしい、、、そこで、PHPメモリーとはなに?という事になり、調べてみました。
PHPメモリとは?
私の調べた所、PHPメモリという単語はなく、PHP内のメモリという事らしい、、PHPとはスクリプト言語・プログラミング言語の事です。(スクリプト言語は今回関係ないので省きますね!気になる方は個人で調べてみてください)
では、そのPHPは何処にあるのか?ですが、PHPはサーバーサイドでコードをいじれます!管理者等しかいじれないコードという事です!
ここで、また一つ疑問が、、、サーバーサイドってどこ?という事です笑
大体は、サイト管理者画面からテーマ編集でコードを触るのですが、どうやらここではなさそう!そこで、もう一度調べてみたら今度はFTPソフトを使わないといけない事が判明しました。
なんだか少しずつ問題が見えてきた様な気が、、、しません笑
今度はそのFTPソフトについて説明します!
FTPソフト・使い方
FTPソフトとは?
FTPソフトとは、サーバにファイルをアップロードしたり、サーバにあるファイルをダウンロードしたりする際に使うファイル転送用ソフトウェアのことです。ウェブサイトをインターネット上に公開する目的で、ウェブページを構成するファイル群をウェブサーバにアップロードする用途にも使います。FTPサーバにアクセスするためのソフトウェアなので、FTPクライアントとも呼ばれます。
引用先:https://allabout.co.jp/gm/gc/47989/
ファイル転送用ソフトウェアという事らしい、、このソフトを使ってPHP内のメモリ制限を上げれば、今回の様なエラーが直るという訳です。オススメが無料FFFTPソフトという事なので、私はそのソフトをダウンロードしました!
(PHP内のファイルはWordPressの管理者画面からは変更できない為、FTPソフトを使ってファイル内のコードを変更します)
FFFTPソフトのダウンロード方法はこちらの記事をお読みください!!参考にさせて頂いた記事になります。
上記のリンク先でダウンロードし終わったら、次は設定・使い方です。
下記のリンク先は設定方法から簡単な使い方まで説明してくれている記事になります!私も参考にさせて頂きました。
リンク先で簡単な使い方を勉強し終わったら、本題のエラーを直す方法にいきたいと思います!
私は、ここまで調べてたどり着くのにマジで時間が掛かりました、、、、、笑
PHPメモリ上限上げる方法
PHP内のメモリ上限を上げる方法は幾つかあります!
1つ目の方法 php.ini
php.iniの変更をする場合はこちらの記事を参考にどうぞ!
この記事では「 PHPのメモリの上限やエラーについて学ぼう!メモリの考え方基本解説 」について、誰でも理解できるように解説します。この記事を読めば、あなたの悩みが解決するだけじゃなく、新たな気付きも発見できることでしょう。お悩みの方はぜひご[…]
2つ目の方法 default-constans.php・wp-config.php
default-constans.phpの変更・wp-config.phpの変更をする場合はこちらの記事を参考にどうぞ!
運用しているWordPressが吐き出すPHPのログに「PHP Fatal error: Allowed me[…]
3つ目の方法 .htaccess
.htaccessの変更をする場合はこちらの記事を参考にどうぞ!
サーバ設定によりますが、PHP のデフォルトではアップロードできるファイルサイズの容量は2MBになっていることが多いです。 この設定を変更するにはサーバ内のphp.iniの書き換えが必要ですが、root権限が必要だったり、初心者だと直接その[…]
※私の様にメモリ制限でエラーが出た場合、メモリ使用量の制限の数字を変更しましょう!
※3つの方法を紹介しましたが、必ずどれかで直るという訳ではありません!使っているサーバーによっては、変更できない場合があります。
私は上記の記事全てを参考にさせて頂きました!
私が選んだエラーの直し方はこれ
私は、php.iniを変更するやり方でエラーを解決しました。
そもそも、私はブログを始めたばかりのペーパーブロガーなので、プログラムも詳しくありませんし、完全素人です。ある程度プログラムを触れる人やそういった方が周りにいる人は、その限りではありませんが素人は以下の
業者に頼むかor自分で直すかのどちらかに分かれます。
私調べになりますが1~3万ぐらいはお金が掛かるという事でした。理由はPHP内のファイルを触る場合、少し間違えばサイトが見れなくなる可能性があるので、デリケートな問題として少し高めらしいです、、、
お金は掛かりませんが先ほど話した通り、下手に触ってサイト自体が見れなくなったら元も子もありません!なので、下手に触らない方がいい、、、
という事になるのですが、エラーを放置したくない!と思う方は必ずどちらかを選ばないといけなく、そうなった場合これぐらいのエラーで毎回業者に頼んでいたらきりがない!という事で私は自分で直す方を選びました!
ですが、先ほど述べた通り、下手に触ってサイトが見れなくなったらまずいので、一番安パイなphp.iniでエラーを解決しました!
(ってか一度.htaccessの編集を触ってサイトが見れなくなりました笑)
何故、一番安パイなのか?と言うと
で一番やりやすい変更方法だと思ったからです。
私の場合契約しているレンタルサーバーがXサーバーになるのですが、どうやらXサーバーはサーバーパネルからもphp.iniの変更が出来たらしいです、、、
苦労してFTPソフトまで取った意味とは、、、笑
php.iniのファイルの場所
FFFTPソフトを使って、php.iniを編集したい場合
※「xserver_php」ファイルは私がXサーバーを契約しているからの名前だと思います。別サーバーの場合そのサーバー名になると思います。
Xサーバーでサーバーパネルからphp.iniの編集をしたい場合
契約しているXサーバーのホーム画面を開き、サーバーパネルにログインします。
※ログインIDとパスワードを忘れた方はXサーバー契約時に送られてきたメールに記入されています。
ログインした後は、真ん中の一番下にphp.ini設定があるのでそこをクリック!
開いたら自身の変更したいサイトアドレスを選び、横の選択するをクリック!
開いたら以下の画像の様に設定画面が出てくるので下までクロールします!
以下の画像「memory_limit」の設定の横の数字を変更します。
変更前 128M →変更後 512M
※数字は好きな数を入れてください
数字を入れたら、一番下の確認画面へ進むを押します
後は確認画面が出てくるので、下までスクロールし、「する」のボタンを押したら完了です!
ついでに、今やった方法意外にも設定の隣に直接編集があり、その場合は以下の画像の部分の数字を変更してください。
「max_execution_time」 は アップロードとその他の処理を含め設定している秒経過したらタイムアウトで処理を中断
「max_input_time」 はアップロードだけで設定している秒経過したらタイムアウトで処理を中断
ワードプレスに画像を挿入する際、アップロード時間オーバーで画像をアップできない場合がありますがその時は、「max_execution_time」 の数を変更すればOKです!
変更前30 → 変更後60
FTPソフトでファイルを触る時の注意点
FTPソフトでファイルを触る時には注意点が二つあります!(初心者の場合)
1つ目は必ずバックアップをとっておきましょう!
ファイルを編集する場合、原本となる元のファイルを取り忘れると、最悪もとに戻せない可能性も出てきます!必ず編集前は今から触るファイルのバックアップを忘れずにしましょう!
2つ目は変更するエラー内容について調べれるだけ調べる
今回、私はmemory_limitのオーバーの際にPHPを触りましたが、サーバーによっては触らなくてもできる場合があるので、安全に出来る方法があるかも!と出来るだけ調べた後に編集を行ってくださいね!
(私の様に失敗してエラーでブログが見えなくなったら笑えません、、、笑)
あと、今回編集したmemory_limitですが、1つルールが存在しており、memory_limitの数値を一番大きくし、upload_max_filesizeの数値を一番小さくする必要があるみたいなので、気をつけて変更してください。
最後に
冒頭でもお話ししましたが、私の場合独学で調べて修正したので、何処かが間違っているもしくは、理解しているつもりの内容が少しずれているという可能性もあります。
PHPは間違えるとブログが見えなくなったりもするので、出来るだけ慎重に直していく方が良いかも知れませんね(初心者に限る)
あ~私の周りのも詳しい人いないかな~と日々思っています笑