2011-02-06 15 views
1

ホームフォルダ内のフォルダを使用するApacheサイトを設定しようとしましたが、成功しませんでした。私は、まさにこのページの手順に従っ:Apacheが私のホームフォルダのパスを受け付けない

https://help.ubuntu.com/community/ApacheMySQLPHP

まだ私は成功しませんでした。私は、サーバーが要求されたページにアクセスするためのアクセス許可を持っていないというエラー403を受け取り続ける。私はフォーラムを検索し、多くはフォルダの許可を変更することを提案しました。私はすぐに行き、777への許可を設定しましたが、それは問題を解決しませんでした。

私は別の検索を行い、誰かが私の手がかりをくれました。私のホームフォルダが暗号化されている可能性があります。これは問題だと思うが、:

  1. 暗号化とApacheの関係は何ですか?私は、Apacheサーバーがファイルバイトにアクセスしようとするのではなく、システムからファイルを要求していると思います!

  2. この問題を解決する方法はありますか。私はテストのためにこのApacheを使用しているので、/ var/wwwにフォルダを移動したくないので、エラーが発生しやすいファイルをコピーするのではなく、ただちに反映させるようにします。

答えて

0

暗号化とApacheの関係は何ですか?私は、Apacheサーバーがファイルバイトにアクセスしようとするのではなく、システムからファイルを要求していると思います!

はい、あなたとは違うユーザーとしてそうする可能性があります(ほとんどのディストリビューションではApacheには独自のユーザーがいると思います)。そのユーザーはおそらくホームフォルダにアクセスできません。

htdocsフォルダを暗号化されたフォルダの外に置くか、何らかの形でApacheサービスを実行することが最善の方法です。しかしそれは、serverfault.comやaskubuntu.comの問題のほうがはるかです。

0

サーバーがSELinux(Security-Enhanced Linux)を有効にして設定されているかのように聞こえます。もしそうなら、あなたのApacheはおそらく特別にマークされたディレクトリにしかアクセスできないように設定されているでしょう。

次のコマンドの試着、SELinuxが有効であるかどうかを確認するには、次の

cat /etc/sysconfig/selinux 

または:

sestatus 

更新:

をあなたはSELinuxが有効になっていない場合、それは単純な許可の問題かもしれません。ディレクトリの権限を777に設定するだけでは不十分です。Apacheユーザーは、rootからホームディレクトリに至る各ディレクトリに対しても権限を持っていなければなりません(実行してください)。さらに、アクセスするファイルには、Apacheのアクセス権(読み取り)も必要です。あなたが実行する必要がコマンドに

は以下のとおりです。

chmod o+x /home 
chmod o+rx /home/someuser 
chmod o+r /home/someuser/* 

(自分のホームディレクトリが/ home/someuserであると仮定します)。

サブディレクトリがある場合は、これらのサブディレクトリも同様に繰り返す必要があります。

私はそれが暗号化の問題だとは思わない。次に、パーミッションエラーではなく、文字化けしたデータを取得します。暗号化を使用している場合は、おそらくプライベートというディレクトリがホームディレクトリにあります。とにかく、Apacheは暗号化されたデータにアクセスできません。暗号化をオフにする必要があります。

+0

これらはどちらも私にとっては機能しません。したがって、SELinuxが有効になっていないように見えます。 – Rafid

関連する問題