web-dev-qa-db-ja.com

Joomla拡張機能のインストール中に、「JFolder :: create:パスがopen_basedirパスにない(宛先を作成できません)」に対処する方法

Joomlaに新しい拡張機能をインストールしようとしていますが、次のエラーメッセージが表示されます:「JFolder :: create:パスがopen_basedirパスにありません宛先を作成できません」

解決策は何ですか?

6
Hbirjand

ユーザーのおかげで別のソリューションをテストしました @ farahmand 非常にうまく機能しており、ソリューションの段階的なガイドを提供することにしました

ソリューション1:

まず、次のトリックを使用して、tmpフォルダーへの正確な絶対パスを見つけます。

PHPファイルをWebサイトのルートに作成します。例:path.php

このコードスニペットをファイルに配置して、[保存]ボタンをクリックします

<?php
$path = getcwd();
echo "Your Absolute Path is: ";
echo $path;
?>

ブラウザでyourdomain.com/path.phpに移動します

今後:

  1. Joomla管理者パネルにログインします。
  2. グローバル構成に移動
  3. [サーバー]タブをクリックしない
  4. パスを"Absolute Path(you've just found)"/tmpに変更します
  5. .htaccessファイルに次のコード行を挿入します:php_value open_basedir NULL

    このソリューションは私にとって非常にうまく機能しており、Joomlaのコアファイルハッキングを必要としません。

2番目のソリューションのステップバイステップガイドを次に示します。

  1. Joomla管理者パネルにログインします。
  2. グローバル構成に移動
  3. 「サーバー」をクリック
  4. パスを/ public_html/tmpから "tmp"に変更します
  5. コントロールパネル(CPanel)にログイン
  6. ファイルマネージャーを開く
  7. フォルダ「ライブラリ」を開く
  8. フォルダ「joomla」を開く
  9. フォルダ「ファイルシステム」を開く
  10. 「folder.php」を右クリックし、「編集」をクリックします。
  11. 次の行を探します(search = obd):$obd = ini_get('open_basedir');その行を先頭に//を付けてコメント化すると、次のようになります://$obd = ini_get('open_basedir');
  12. 保存して閉じます。

私は @ johanpw's solutionit's もテストしましたが、JoomlaバックエンドからJoomla構成を変更できない場合があるため、直接configuration.phpパラメータを変更する必要がありますコントロールパネルまたはFTPアカウント。

6
Hbirjand

Joomlaフォーラム で提案されている別の解決策は、FTPレイヤーを有効にすることです。

FTPレイヤーを有効にできます fromシステム->グローバル構成->サーバータブ-> FTP設定。サーバーにアクセスできるユーザーのFTP詳細(ホスト、ユーザー名、パスワード)を追加します。

エラーを再現できないため、自分でテストすることはできませんが、FTPを有効にすることで、Joomlaは特定のサーバーの制限を克服できます。

2
johanpw