私のライブラリを私のサーバー(fedora21)に配置するためにcaliber2opdsを使用しようとしています。すべてがうまく機能し、epubをダウンロードするまでナビゲートできます。
エラー403が発生します。
You don't have permission to access /Anonyme/Le Livre Sans Nom (41)/Le Livre Sans Nom - Anonyme.epub on this server.
192.168.1.21/calibreを介してサーバーにアクセスします。 Calibre2opsはすべてを含みます
/mnt/Sardaukar/web/calibre
caliber2opdsによって挿入されたHTMLファイル
/mnt/Sardaukar/web/calibre/_catalog
実際のepubも同様です。
/mnt/Sardaukar/web/calibre/Anonyme/Le Livre Sans Nom (41)/Le Livre Sans Nom - Anonyme.epub
httpdファイルは次のとおりです
Alias /calibre /mnt/Sardaukar/web/calibre/_catalog
<Directory /mnt/Sardaukar/web/calibre/_catalog>
AllowOverride All
Options Indexes FollowSymLinks
Require all granted
</Directory>
私は以前に.htaccessを使ってみましたが、以前はうまくいきましたが、今は何が問題なのかわかりません。 /mnt/Sardaukar/web/calibreの権限は770、chown:www-usersです。
さらに調査を行った後、エラーログに次のものが見つかりました。
[Mon Jun 22 21:06:59.774348 2015] [authz_core:error] [pid 10805] [client 192.168.1.5:51992] AH01630: client denied by server configuration: /var/www/html/Anonyme, referer: http://192.168.1.21/calibre/book_0
>>>/book_41.html
/var/www/html
なぜepubを読もうとしますか?
答え1
まず、参照DistrosDefaultLayout - FedoraApache Wikiエントリ
デフォルト値をオーバーライドするには、ドキュメントルートを追加する必要があり、デフォルトルートからファイルを提供しないため、ServerRootを追加する必要があります(デフォルトは上書き)。
Alias /calibre /mnt/Sardaukar/web/calibre/_catalog
ServerRoot "/calibre"
# Ensure that Apache listens on port 80
Listen 80
<VirtualHost *:80>
DocumentRoot "/Anonyme/"
ServerName mypubs.local
# Other directives here
</VirtualHost>
<Directory /mnt/Sardaukar/web/calibre/_catalog>
AllowOverride All
Options Indexes FollowSymLinks
Require all granted
</Directory>
これを行うには、フルパスを{ServerRoot} + {DocumentRoot}または{Alias / calibre} + Anonymeとして読み込む必要があります。
推理
セキュリティ上の理由から、ApacheはServerRoot
。ServerRoot
したがって、あなたのサーバーが「サービス」している場所をApacheに知らせる必要があります。これらのどれも意味がない場合はお読みください。Slicehostの素晴らしく深い記事。 Gentooはあなたのディストリビューションではないので、以下を使用してください。Linuxディストリビューション特定の展開にリンクしたのと同じ記事を見つけるためのナビゲーションリンク。あなたの学習と練習の一環として、あなたのepubを安全な場所に保管し、次のことを行います。
- 私のハッカー
httpd.conf
ファイルを削除してください。 - 仮想ホストを正しく有効/構成するには、リンクしたガイドに従ってください。
- 手順2で作成した仮想ホスト構成にepubを追加します。