mac nginx が php を解析しない場合はどうすればよいですか?
Mac nginx が php を解析しない場合の解決策: 1. 正しい名前の新しいファイルを cp します; 2. コマンド「php-fpm --fpm-config...」を実行します; 3. ファイルを cp しますwww .conf ファイルという名前; 4. ソリューション プロセスを終了します。
この記事の動作環境:macOS10.15システム、PHP7.1バージョン、MacBook Air 2019コンピュータ
mac nginx php が解析されない場合はどうすればよいですか?
nginx で php をデプロイするときに Mac が遭遇する落とし穴
ある人から Web サイトのデプロイを手伝ってほしいと頼まれ、まずローカル nginx でデバッグしたいと思いました。最初、ページを開いたとき、403 と表示されました。これは以前にも見たことがあり、nginx の権限の問題でした。権限を変更した後、PHP ページにアクセスすると、解析せずに直接ダウンロードされることがわかりました。私のPCにPHP環境がないことを思い出し、PHPをダウンロードしましたが、やはり同じ症状でした。つまり、私はPHPにあまり詳しくないため(以前はxamppなどのソフトウェアを使用していました)、完了するまでに時間がかかりました。
最初に理解すべきことは、nginx 自体は PHP を処理できないということです。これは単なる Web サーバーです。フロントエンドが PHP を要求すると、nginx は処理のためにインターフェイスを PHP インタープリターに送信してから返す必要があります。結果をフロントエンドに送信します。通常、nginx はリクエストを fastcgi 管理プロセスに送信して処理します。たとえば、nginx の設定:
location ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;#这里原来不是$document_root,搞得我很蒙,还好网上查到改好了,不然会报file not found include fastcgi_params; }
したがって、fastcgi を開始するには、php-fpm がここで使用されます。これは php fastcgi マネージャーであり、php 言語にのみ使用されます (古いバージョンの php は、 php-fpm を別途ダウンロードしてください。私が使用している php-fpm にはこれが統合されています)。
ここには奇妙な質問がたくさんあります。
php-fpm の初回実行
失敗: /private/etc/php-fpm.conf ファイルが見つかりません。
解決策: ただし、このディレクトリには php-fpm.conf.default ファイルがあるため、正しい名前の新しいファイルを作成します
- ##php-fpm を 2 回目に実行します
php-fpm --fpm-config /private/etc/php-fpm.conf --prefix /usr/local/var
- Run php-fpm for the 3 回目
Failed: No pool defined. at least one pool section must be specified in config file
- #4 番目の php-fpm の初回実行
- 失敗: ポートが占有されています
解決策: このプロセスを強制終了します
sudo lsof -i tcp:9000#占有ポートを探す ポート9000のプロセス番号
#kill -9 port#Kill! php-fpm を 5 回目に実行します## 成功しました。
##補足:
nginx で設定する場合は少し違いがあり、Mac では php-fpm は 9000 ポートを直接リッスンしますが、サーバーでは php7 をリッスンします。 0. -fpm.sock ですがソケット ファイルです。この方法の方が高速な場合があるため、php
を正常に実行するには、nginx の php 設定のfastcgi_pass 127.0.0.1:9000;
推奨学習: 「
PHP ビデオ チュートリアル」
引き続き追加非常に興味深い内容なので、ビデオをアップロードしたいと思います。 27 分、nginx は 413 Request Entity Too Large を直接報告しましたが、設定しませんでした...
それを nginx 設定に追加します (set-enabled/default)fastcgi_pass unix:/run/php/php7.0-fpm.sock;
server { ... client_max_body_size 80m; ... }
次に、php.ini を変更してその中の 2 つの構成を変更する必要があります
nginx -s reload service nginx restart
次に、php-fpm プロセスをオフにして再起動します~
ps : 先生 本当に全然調べてないんですが…mp4はアップロードできませんが、このタイプはシステムに追加されていません。これは自分で探すしかありません…不快です:(
note : ubuntu では apt を使用することがより推奨されるようになりました。apt-get ではありません…だから、変更する時期が来ました!
以上がmac nginx が php を解析しない場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









PHPは動的なWebサイトを構築するために使用され、そのコア関数には次のものが含まれます。1。データベースに接続することにより、動的コンテンツを生成し、リアルタイムでWebページを生成します。 2。ユーザーのインタラクションを処理し、提出をフォームし、入力を確認し、操作に応答します。 3.セッションとユーザー認証を管理して、パーソナライズされたエクスペリエンスを提供します。 4.パフォーマンスを最適化し、ベストプラクティスに従って、ウェブサイトの効率とセキュリティを改善します。

PHPとPythonには独自の利点と短所があり、選択はプロジェクトのニーズと個人的な好みに依存します。 1.PHPは、大規模なWebアプリケーションの迅速な開発とメンテナンスに適しています。 2。Pythonは、データサイエンスと機械学習の分野を支配しています。

PHPはMySQLIおよびPDO拡張機能を使用して、データベース操作とサーバー側のロジック処理で対話し、セッション管理などの関数を介してサーバー側のロジックを処理します。 1)MySQLIまたはPDOを使用してデータベースに接続し、SQLクエリを実行します。 2)セッション管理およびその他の機能を通じて、HTTPリクエストとユーザーステータスを処理します。 3)トランザクションを使用して、データベース操作の原子性を確保します。 4)SQLインジェクションを防ぎ、例外処理とデバッグの閉鎖接続を使用します。 5)インデックスとキャッシュを通じてパフォーマンスを最適化し、読みやすいコードを書き、エラー処理を実行します。

PHPは主に手順プログラミングですが、オブジェクト指向プログラミング(OOP)もサポートしています。 Pythonは、OOP、機能、手続き上のプログラミングなど、さまざまなパラダイムをサポートしています。 PHPはWeb開発に適しており、Pythonはデータ分析や機械学習などのさまざまなアプリケーションに適しています。

nginxが開始されるかどうかを確認する方法:1。コマンドラインを使用します:SystemCTLステータスnginx(Linux/unix)、netstat -ano | FindStr 80(Windows); 2。ポート80が開いているかどうかを確認します。 3.システムログのnginx起動メッセージを確認します。 4. Nagios、Zabbix、Icingaなどのサードパーティツールを使用します。

クラウドサーバーでnginxドメイン名を構成する方法:クラウドサーバーのパブリックIPアドレスを指すレコードを作成します。 NGINX構成ファイルに仮想ホストブロックを追加し、リスニングポート、ドメイン名、およびWebサイトルートディレクトリを指定します。 nginxを再起動して変更を適用します。ドメイン名のテスト構成にアクセスします。その他のメモ:SSL証明書をインストールしてHTTPSを有効にし、ファイアウォールがポート80トラフィックを許可し、DNS解像度が有効になることを確認します。

nginxバージョンを照会できるメソッドは次のとおりです。nginx-vコマンドを使用します。 nginx.confファイルでバージョンディレクティブを表示します。 nginxエラーページを開き、ページタイトルを表示します。

すべてのコンテナ(Docker PS)をリストする手順に従って、Dockerコンテナ名を照会できます。コンテナリストをフィルタリングします(GREPコマンドを使用)。コンテナ名(「名前」列にあります)を取得します。
