私はSatellite 6.2を開発しており、約200GB以上のカスタムリポジトリをローカルシステムに移動しました。これらのサブディレクトリとファイルは、/home/import/XX ディレクトリが別のディスクにあるため、そのディレクトリの下にあります。
とにかく、localhost / pubの下にimportsというフォルダを作成し、そこから/ home / importsへのシンボリックリンクを作成しました。
問題はネットワーク側にあります。行きます。http://localhost/pub/importXXディレクトリ(ホームディレクトリを指すディレクトリ)を見ることができますが、それをクリックすると
"禁止このサーバーの/pub/imports/XX/にアクセスする権限がありません。"
httpd.confをチェックし、FollowSymLinksがあることを確認しました。
AccessFileName .htaccess
<FilesMatch "^\.ht">
Options FollowSymLinks
Require all denied
</FilesMatch>
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
権限も確認しましたが、シンボリックリンクは次のとおりです。
imports]# ll
total 0
lrwxrwxrwx. 1 root root 54 Nov 29 14:01 XX -> /home/imports/XX
また、/home/imports/の権限を確認しました。
ll -r /home/imports/XX/
total 0
drwxr-xr-x. 3 root root 20 Nov 29 11:35 XX
私が逃したことは明らかですか?数時間を過ごしたがアクセスできない理由には、考えられる回答が見つかりません。
答え1
Apache に FollowSymLinks が設定されていても、誰かが同じパスに移動する場合、追加のセキュリティ権限があります。これはSELinuxによるものです。/etc/sysconfig/selinux
この行を編集して変更する必要がありますSELINUX=permissive
その後、サーバーを再起動してWebブラウザを介して正常にファイルにアクセスできました。