メディアセクションに画像をアップロードできません。このエラーメッセージが表示されます。
「ディレクトリwp-content/uploads/2015/05を作成できません。その親ディレクトリはサーバーによって書き込み可能ですか?」
パーミッションを変更してみて、アップロードとwp-contentディレクトリの両方にフルアクセス777を与えましたが、これは役に立ちませんでした。
所有者をApacheに変更しようとしました:/ wordpress/wp-contentのApacheですが、それも助けにはなりませんでした。
upload_pathは、option-media.phpでwp-content/uploadsに設定されます。それでも動作しません。
アップロードパスdefine(UPLOADS, 'wp-content/uploads');
No Helpを定義しようとしました。
(サーバー:centos)
誰か、助けてください!!!
-前もって感謝します。
Debianのようなもの:
chown -R www-data:www-data /var/www/{yourpath}/wp-content/uploads
開発サイトから本番サイトに移行した後、同様の問題が発生していました。メッセージは詐欺的であることが判明しました。設定、メディアを確認してください。メディアのディレクトリが現在のサイトに対して正確であることを確認します。サイトが移行された場合、リストされているディレクトリはまだ古いサイトのものであり、更新する必要がある場合があります。
/ wp-contentディレクトリーの許可を0775に変更して、再試行してください。
Sudo chmod 0775 {yourpath}/wp-content/uploads
失敗した場合は、許可を0777に変更して再試行してください。
Sudo chmod 0777 {yourpath}/wp-content/uploads
成功したら、必ず/ wp-contentのアクセス許可を開始時の状態に戻します。
また、問題の解決を試みている間に変更した他のファイルにアクセス許可を戻すこともできます。
ここにあるその他のオプション: https://www.tipsandtricks-hq.com/how-to-fix-the-unable-to-create-directory-error-in-wordpress-5264
レガード
wordpressを新しいサーバーに移行した後にこのエラーが表示される場合は、アップロードパスを確認してください:settings-> media-> Store uploads in this folder
デフォルト値はwp-content/uploadsです。
おそらく古いパスがあります。
これを解決するには、設定Media Storeアップロードフォルダーへの参照を更新しました。
WordPress admin-> Settings-> Media]に移動し、Store uploads in this folder
オプションをpublic_html
ホスティングアカウントの内容で更新します。
/home/<base_folder_name>/public_html/wp-content/uploads
私にとって<base_folder_name>
は、ホスティングアカウントのものとは異なりました。
wp-admin/options.php
に移動しますupload_path
の下で、正確にwp-content/uploads
に置き換えます(引用符なし、余分なスラッシュなし)
それは、他のすべてのソリューションを数日間試した後、私にとってはうまくいきました。
Centos7で WordPressでディレクトリを作成できないエラーを修正する方法 からすべてのソリューションを試しました。しかし、それは機能しません。
次に、/ var/log/audit/audit.logにいくつかの有用なメッセージを見つけました
type = AVC msg = audit(1495357844.782:604):avc:denied {write} for pid = 2721 comm = "httpd" name = "wp-content" dev = "dm-5" ino = 1074299184 scontext = system_u:system_r: httpd_t:s0 tcontext = unconfined_u:object_r:etc_runtime_t:s0 tclass = dir type = SYSCALL msg = audit(1495357844.782:604):Arch = c000003e syscall = 83 success = no exit = -13 a0 = 7fffba9c62c0 a1 = 1ff a2 = 8 a3 = 5アイテム= 0 ppid = 1556 pid = 2721 auid = 4294967295 uid = 48 gid = 48 euid = 48 suid = 48 fsuid = 48 egid = 48 sgid = 48 fsgid = 48 tty =(none)ses = 4294967295 comm = "httpd "exe ="/usr/sbin/httpd "subj = system_u:system_r:httpd_t:s0 key =(null)
ファイル情報を確認してください:ls -Z /data/web/wordpress
SELinuxがHttpdによるファイルへのアクセスを妨げていることがわかりました。したがって、SELinuxを無効にするか、ファイルコンテキストを変更できます:chcon -R --type = httpd_sys_rw_content_t/data/web/wordpressそしてそれは動作します。
「アップロードされたファイルをwp-content/uploads/2015/05に移動できませんでした。」
このエラーは、サーバーに対するユーザーの権限が不十分なために発生します。
このエラーを解決する1つの手っ取り早い方法は、777許可を設定することですが、しばらくは機能しない場合があります。
これはあなたを助けるこのリンクに従ってください http://2surge.com/how-to-fix-the-uploaded-file-could-not-be-moved-to-wp-content-error-message/
ありがとう
Parallels Pleskサーバーでも同じ問題が発生しました。ファイルマネージャ内からアクセスオプションを使用して、webserver/websiteユーザーのアクセス許可を変更する必要がありました。
お役に立てれば!
これはローカルにいるときのソリューションですが、サーバーにも適用できます。
時々データベースからバックアップを取得する場合サーバー上にあり、ローカルでそれを回復すると、この問題が発生します: "ディレクトリを作成できません。 。 "フォルダーに適切なアクセス許可がある場合でも。これは、WP=データベース上のupload_pathの値を指しているためです。
wp_optionsテーブルに移動します。
pload_pathを検索し、パスが正しいかどうかを確認します。
そうでない場合。 (MacおよびUNIXの場合)アップロードフォルダーに移動し、ターミナルにドラッグします。そして、pwdコマンドを使用して、データベースのpload_pathに応答をコピーします。
これが誰かの助けになることを願っています。
このソリューションは私のために働いた:
chown -R www-data:www-data /path-to-mywordpress-root-folde
これは、権限よりもファイルとディレクトリの所有権に問題がある場合があります。 phpinfo()
ページを使用して、PHPコードが実行しているユーザーを見つけます。
システムユーザーがわかったら、使用しているFTPアカウントが、そのユーザーとしてファイルをアップロードするように構成されていることを確認します。別のユーザーを使用してアップロードされている場合は、chown
を使用して、ユーザーに一致するようにベースパスの所有権を変更します。
例えば:
$ Sudo chown -R <user> /path/to/public_html
フォローしてみてください。 {yourpath}が正しいパスに置き換えられていることを確認してください
スーパーユーザー権限でアップロードディレクトリを作成します
Sudo mkdir -p /var/www/{yourpath}/wp-content/uploads
所有権を現在のユーザーに変更する
Sudo chown -R $USER:$USER /var/www/{yourpath}/wp-content/uploads
このコマンドを実行するだけです:
Sudo chown -R www-data /path/to/wordpress
それが役に立てば幸い。