2015-01-08 5 views
7

私は2ヶ月間からWordPressウェブサイトで作業しています。以前は多くの画像をアップロードしていましたが、画像をアップロードするときにエラーが発生しました。新年以降この問題に直面しています。 wp-content/uploads/2015/01に変更します。アップロードしたファイルをwp-content/uploads/2015/01に移動できませんでした。画像アップロードで問題が発生する

スクリーンショットは以下があります: - そのフォルダが存在する場合ならば、それは、その後、 をチェックしなければ The uploaded file could not be moved WordPress

+2

郵便あなたのコードのWWW

のUbuntu 16.04で動作します。 –

+0

このディレクトリは存在しますか? – Rizier123

+3

パーミッションとディレクトリの所有者 – violator667

答えて

4

私はこの問題がサーバープロバイダからのものであることを調査しました。

通常、すべてのファイルは、Webサーバー上のユーザー(ftp)アカウントによって所有されていて、そのアカウントによって書き込み可能である必要があります。共有ホストでは、ファイルはWebサーバープロセス自体によって所有されるべきではありません(これはwww、apache、またはnobodyユーザーです)。

WordPressからの書き込みアクセス権が必要なファイルは、WordPressで使用されるユーザーアカウント(サーバーアカウントとは異なる場合があります)によって所有またはグループ所有されている必要があります。たとえば、FTPファイルをサーバーに送り込むことができるユーザーアカウントがあるかもしれませんが、サーバー自体は、別のユーザーグループ(dhapacheやnobodyなど)で別のユーザーを使用して実行される場合があります。 WordPressがFTPアカウントとして実行されている場合、そのアカウントは書き込みアクセス権を持っている必要があります。つまり、ファイルの所有者であるか、書き込みアクセス権を持つグループに属している必要があります。後者の場合、これはデフォルトよりも許可がより厳しく設定されていることを意味します(たとえば、フォルダで755ではなく775、644ではなく664)。

You can see here how to change file permission..

+0

私はホスティングのIISサービス、私はどのように問題を解決するのか分からない。しかし、興味があるのは、私がWordpressに写真をアップロードする際に問題が発生する前であることです。私はWordpressを更新することもできません。しかし、先週、私は何の問題もなかった。 –

2

それはおそらく、 /アップロード/ 2015

チェックを作成する権限を持っていません/アップロード/ 2015/1 /が存在します。

権限:

chmod 755 /uploads/2015/1/ 
chown www-data:www-data /uploads/2015/1/ 

これらのフォルダは/アップロード/フォルダと同じ権限を持つ必要があります。 また、問題の原因となっているフォルダを正確に表示する必要があるため、error_logも確認してください。

+0

私は現在uloads/2015/01ですが、 'chown www-data:www-data'と' error_log'を得る場所を説明してください。 –

+0

彼のサーバの 'www-data'ユーザが正しい(正しい)所有者であると仮定することはできません。 – violator667

+0

Ok違反者今私は知っている、と私はそれを見つけることができますerror_logは何ですか? –

0

私もこの問題を抱えていたし、ホスティングアカウントのディスククォータを超過したためだったが分かりました。

エラーを記録していた古いスクリプトがあり、エラーログが非常に大きくなって利用可能なクォータが満たされていることがわかりました。

FTPを使用して新しいディレクトリを作成しようとしたときに、「ディスククォータが超過しました」というメッセージが表示されました。

9

これは私のために働く。

$ sudo chown -R _www uploads/ 
$ sudo chmod -R g+w uploads/ 

私はあなたがwp-contentディレクトリにあると仮定しています。

+0

私のために働いた。ありがとう! –

+0

"sudo chmod -R g + w uploads /"私が働いてくれてありがとう –

14

この記事は非常によく問題を説明し、解決しますhttp://2surge.com/how-to-fix-the-uploaded-file-could-not-be-moved-to-wp-content-error-message

基本的な前提は、あなたのhttpd/apacheの/ Webサーバのスレッドを実行しているプロセスのIDは、アップロードディレクトリへの書き込みアクセス権を持たなければならないということです。

問題を解決するには、次のウェブサーバが更新

の下で実行されているアカウント

  1. チェック:Unixの使用で...

    ps aux | egrep '(apache|httpd)'

    を...これにより、Webサーバーのプロセスの一覧がプロセスのIDと共に表示されます。

    nobody 8718 0.1 0.4 1332864 17180 ? Sl 17:11 0:06 /usr/local/apache/bin/httpd -k start -DSSL

  2. 「誰」など実行していないアップデートは、アップロードディレクトリのパーミッションは、それへの書き込みを占めているようにします。

    更新:Unixでは、あなたが使用することができます...あなたはまた、(rquired場所で)このアカウントの権限を修正することができます

    chown -R nobody /<path to upload directory>/wp-content/upload/

    それを確実にするためには、chmodコマンドまたはfilezillaのを使用して書き込み権限を持っています必要に応じてディレクトリへの変更をカスケードします。

詳細な内訳についてはリンク先の記事をご覧ください。希望が助けてくれる! :)

+0

リンクが正しく動作していないので、ここで説明できる方が良いでしょう:) –

+0

リンクされた記事のいくつかの例を追加しました。それは助けます:) –

+3

最初の本当の答えは約777の許可ではありません – myol

-3

ディレクトリのアクセス権を777に変更すると、私は役に立ちました。私

sudo chown -R www-data html 

は、現在のディレクトリを仮定するために

+0

これをしないでください。設定777はほとんど決して良い考えではありません。その詳細はこちら:https://askubuntu.com/questions/20105/why-shouldnt-var-www-have-chmod-777 – hlozancic

0

これは、Apache2の

関連する問題