Windows system >> Windowsの知識 >  >> コンピュータソフトウェアのチュートリアル >> サーバー技術 >> サーバーについて >> このサーバーソリューションへのアクセスを許可されていないApacheの問題

このサーバーソリューションへのアクセスを許可されていないApacheの問題

  

プロジェクトはApache Httpサーバーにデプロイされており、設定ファイルはapachectl -tによって検出されます。ただし、ブラウザからのアクセスは許可されていますが、「このサーバーにアクセスする権限がありません」

1まず、conf.d /python.confファイルを表示します。

<ディレクトリ"プロジェクトパス"<>

オプション一覧FollowSymLinks +を含む

AllowOverrideなし

許可する、拒否する:

すべてから許可<< Br>

< /Directory>

上の赤い部分は、だれでもディレクトリへのアクセスを許可されていることを示しています。

2.次に、設定ファイルに問題がないので、http.confを考慮する必要があります。ファイルに指定されているユーザーおよびグループに対するアクセス権。 Apache wikiにPermissionDeniedの解決策がありますリンクはhttp://wiki.apache.org/httpd/13PermissionDeniedです翻訳は以下の通りです:

エラー13はファイルシステムのアクセス許可エラーを示しています。つまり、Apacheは間違った許可のためにアクセスを拒否されます。一般的に、これはApache設定ファイルにエラーがあるという意味ではありません。

ファイルにサービスを提供するために、Apacheはそれらのファイルにアクセスするための適切なパーミッションを持っていなければなりません。それはオペレーティングシステムによって与えられます。特に、httpd.confファイルでユーザーまたはグループを指定すると、提供されているすべてのファイルと、それらのファイルを含むディレクトリ、およびファイルシステムのルートまでのすべての親ディレクトリを見つけることができなければなりません。

UNIXライクなオペレーティングシステムのhttpd.confファイルで指定されたユーザーまたはグループのリソースへの一般的なアクセス通常のファイルの場合、フォルダの場合は644 -rw-r - r--です。またはCGIスクリプトは755 drwxr-xrxです。オペレーティングシステムでサポートされている拡張アクセス権(SELinuxアクセスなど)を確認する必要があるかもしれません。UNIX系オペレーティングシステムで/usr /local /apache2 /にアクセスする場合htdocs /foo /bar.htmを開くと、Permission Deniedエラーが表示されます。

まず、ファイルのアクセス権を確認します。

$ cd /usr /local /apache2 /htdocs /foo $ ls -l bar.htm

必要に応じて、それらを修正します。

$ chmod 644 bar.html

フォルダとそれぞれの親フォルダ(/usr /local /apache2 /htdocs /foo、/usr /local)についても同じことをします。 /apache2 /htdocs、/usr /local /apache2、/usr /local /、/usr):

$ ls -la $ chmod + x $ cd .. $#ルートまでの繰り返し

システムによっては、ツールnameiを使用して各パス上の異なるコンポーネントのアクセス権を一覧表示し、次にアクセス権の問題があるかどうかを調べることができます。

$ namei -m /usr /local /apache2 /Htdocs /foo /bar.html

3.それでも問題が解決しない場合は、拡張アクセス権を確認する必要があります。

setenforce 0でSELinuxを閉じて問題が解決するかどうかを確認してください。

私が遭遇した問題は、http.confファイルで指定されたユーザーがプロジェクトが置かれているディレクトリにアクセスできないということでした。

Copyright © Windowsの知識 All Rights Reserved