GNU/Linux >> Linux の 問題 >  >> Cent OS

Centos –「シンボリックリンクが許可されていないか、リンクターゲットにアクセスできない」/ Centos 6のApache?

まったく新しいCentOS6をインストールしました。これには、ドキュメントルートに開発ファイルへのシンボリックリンクがあります。

[[email protected] html]# ls -l
total 4
-rwxrwxrwx. 1 root root  0 Sep 18 20:16 index.html
-rwxrwxrwx. 1 root root 17 Sep 18 20:16 index.php
lrwxrwxrwx. 1 root root 24 Sep 18 20:19 refresh-app -> /home/billy/refresh-app/

私のhttpd.confにはこれがあります:

<Directory "/">
    Options All
    AllowOverride None
    Order allow,deny
    Allow from all
</directory>

シンボリックリンクのターゲットには、apacheが必要なものをすべて読み取ることができる権限があります。

 [[email protected] billy]# ls -l
total 40 (Some entries were omitted because the list was too long
drwxr-xr-x. 7 billy billy 4096 Sep 18 20:03 refresh-app

また、/etc/selinux/confを変更してSELinuxを無効にしてみました :

SELINUX=disabled

しかし、私が何をしようとも、誰かがそのリンクにアクセスしようとすると、http://localhost/refresh-app/ 、403 FORBIDDENエラーページが表示されます。これは、/var/log/httpd/error_logに書き込まれます。 :

Symbolic link not allowed or link target not accessible

Apacheがシンボリックリンクのターゲットにアクセスできないのはなぜですか?

承認された回答:

問題が見つかりました。結局のところ、Apacheは、私がサービスを提供しているディレクトリ/home/billy/refresh-app/だけでなくアクセスを望んでいます。 、だけでなく、その上のすべてのディレクトリ、つまり/home/billy//home 、および/ 。 (理由はわかりません…誰かにサブディレクトリへのアクセス権を与えることで、そのサブディレクトリより上のすべてのものへのアクセス許可を与える必要はありません…。)

.htaccessを探していると思います または何か、またはおそらく*nixがディレクトリトラバーサルのアクセス許可をどのように処理するかについて奇妙です。


Cent OS
  1. Oracle対応のCentOS6.2サーバーのインストール

  2. CentOS 5 /RHEL5にTeamViewerをインストールします

  3. rm:「doc/by-app」を削除できません:機能が実装されていません (CentOS/RHEL 7)

  1. CentOS 7 /RHEL7でルートパスワードをリセットする

  2. Centos – Centos6とCentos7でハードリンクのアクセス許可の動作が異なりますか?

  3. CentOS/RHEL で監査ログとメッセージ ファイルがローテーションしない

  1. CentOS8にApacheCassandraをインストールする方法

  2. CentOS7にApacheをインストールする方法

  3. CentOS7にApacheMavenをインストールする方法