ホームページ >バックエンド開発 >PHPチュートリアル >私のローカル環境ではサブディレクトリ内の PHP ファイルを解析できないのはなぜですか?

私のローカル環境ではサブディレクトリ内の PHP ファイルを解析できないのはなぜですか?

WBOY
WBOYオリジナル
2016-06-23 14:10:281417ブラウズ

環境は
apache2.2
PHP5.4


Apache インストールディレクトリの htdosc が私の WEB ルートディレクトリです
その中で作成したプロジェクトは PHP ファイルを解析できません 接続がリセットされたというメッセージが表示されます。またはネットワークが切断されています。アドレスバーにこのパスを入力すると、現在のディレクトリ内のファイルのみが表示されます

場合によっては、ルートディレクトリ内のファイルが正常に解析されます。それ自体は非常に奇妙です
httpd.conf の設定に問題があると思いますが、Apache の設定についてはよくわかりません。助けてください

ディスカッションに返信 (解決策)

httpd.conf は次のファイル拡張子を解析できます:

49a83bcd86452e5ad987d3b8d0ee008dを使用する を使用する を使用する を使用する を使用する ‐ ‐ ‐ ‐ ‐ ‐ dType application/x-httpd-php-source .phps
AddType application/x-httpd-php .php html .vcgi
AddHandler タイプマップ変数
2071f931c9870be1bebed0bdda8305e7

httpd.conf 解析可能なファイル拡張子:

49a83bcd86452e5ad987d3b8d0ee008d TypesConfig conf/mime.types
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz

追加...


設定にない項目が 2 つあります。それらを追加して再起動しました。ブロックの問題ではないはずです。

win7
I先ほども言いましたが、上のファイルは LINUX での Apache の設定ファイルです。これとあなたのものとの違いを見てください:
WAMP-windows_apache_mysql_php 関連の環境の設定とセットアップ
いいえ、一般的な設定は知っています。ルート ディレクトリにある php ファイルは解析できますが、サブディレクトリにindex.php が存在しない場合、ブラウザはディレクトリ内のすべてのファイルをリストします。接続がリセットされ、接続が切断されたことを示すメッセージが表示されます。

いいえ、#5 のドキュメントに従って変更された httpd.conf ファイルでは、あなたのような問題は発生しません。どこかで繰り返しましたか?それとも仕様書が書かれていないのでしょうか?インストールされている httpd.conf と比較します。

Apache エラー ログをチェックして、どのようなエラーが報告されているかを確認してください。

htdocs は本来静的ファイルを保存するように設計されています

php などの動的ファイルは cgi-bin に配置されます

Google キーワード: Apache ScriptAlias

win7 上の wamp 環境では問題なく実行されます。メールを残していただければお送りします。


DefaultType text/plain<IfModule mime_module>    #    # TypesConfig points to the file containing the list of mappings from    # filename extension to MIME-type.    #    TypesConfig conf/mime.types    #    # AddType allows you to add to or override the MIME configuration    # file specified in TypesConfig for specific file types.    #    #AddType application/x-gzip .tgz    #    # AddEncoding allows you to have certain browsers uncompress    # information on the fly. Note: Not all browsers support this.    #    #AddEncoding x-compress .Z    #AddEncoding x-gzip .gz .tgz    #    # If the AddEncoding directives above are commented-out, then you    # probably should define those extensions to indicate media types:    #    AddType application/x-compress .Z    AddType application/x-gzip .gz .tgz    AddType application/x-httpd-php .php    AddType application/x-httpd-php .php3    #    # AddHandler allows you to map certain file extensions to "handlers":    # actions unrelated to filetype. These can be either built into the server    # or added with the Action directive (see below)    #    # To use CGI scripts outside of ScriptAliased directories:    # (You will also need to add "ExecCGI" to the "Options" directive.)    #    #AddHandler cgi-script .cgi    # For type maps (negotiated resources):    #AddHandler type-map var    #    # Filters allow you to process content before it is sent to the client.    #    # To parse .shtml files for server-side includes (SSI):    # (You will also need to add "Includes" to the "Options" directive.)    #    #AddType text/html .shtml    #AddOutputFilter INCLUDES .shtml</IfModule>

htdocs はもともと静的ファイルを保存するように設計されています

php などの動的ファイルは cgi-bin に配置されます

Google キーワード: Apache ScriptAlias

どのディレクトリであっても問題ありません

プロジェクト作成した PHP ファイルは解析できません。接続がリセットされたか、ネットワークが切断されました。アドレス バーにこのパスを入力すると、現在のディレクトリ内のファイルのみが表示されます。ルートディレクトリにある.phpは正常に解析できます

このindex.phpインデックスファイルが存在しない場合、ディレクトリを直接開くと、確かにファイルのディレクトリ構造が表示されます。まず、index.php ドキュメントを解析します。これは、Apache 設定ファイルで変更できます

検索

オプション インデックス FollowSymLinks


インデックスを削除し、Apache を保存して再起動します

ファイルにアクセスすると、接続がリセットされたことを示すメッセージが表示されます。
次に、ログを確認して、具体的なエラーが何であるかを確認します。php.ini のエラー メッセージを開く、ブラウザを設定するなど、さまざまな理由が考えられます。

ご回答ありがとうございます。原因はわかりませんでしたが、後で解決しました。 解決策は非常に簡単で、Apache を再度ダウンロードしました。

私もこの問題に遭遇しました

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。