Ubuntu12.04でnginx+php+mysqlを構成する
1. ubuntu nginx アップデートミラーソースを追加します
sudo vi /etc/opt/source.list
追加: deb http://nginx.org/packages/ubuntu/ precision nginx
deb-src http://nginx.org/packages/ubuntu/ precision nginx
2. パッケージ ソースを更新します:
sudo apt-get update
次のエラーが発生しました: W: GPG エラー: http://nginx.org precision リリース: 公開キーがないため、次の署名を検証できません: NO_PUBKEY ABF5BD827BD9BF62
解決方法: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ABF5BD827BD9BF62
3. 再実行: sudo apt-get update
sudo apt -get install nginx
次のエラーが発生します: nginx (1.6.3-1~precise) をセットアップしています ...
nginx: [emerg] binding() to 0.0.0.0:80失敗しました (98: アドレスはすでに使用されています)
nginx: [emerg] binding() から 0.0.0.0:80 に失敗しました (98: アドレスはすでに使用されています)
nginx: [emerg] binding () から 0.0.0.0 :80 に失敗しました (98: アドレスはすでに使用されています)
nginx: [emerg] binding() から 0.0.0.0:80 に失敗しました (98: アドレスはすでに使用されています)
nginx: [emerg ] 0.0.0.0:80 へのbind() が失敗しました (98: アドレスはすでに使用されています)
nginx: [emerg] まだbind()
invoke- rc.d: initscript nginx 、アクション "start" が失敗しました。
原因: ポート 80 はすでに他のプロセスによって使用されています。
解決策: nginx サービスのバインディング ポートをポート 88 に変更します。 sudo vi /etc/nginx/conf.d/default.conf
変更:server {
listen 88;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/log/host.access.log main;
location / {
root /usr/share/nginx/html;
インデックスindex.htmlindex.htm;
}
4. nginx を起動します
sudo /etc/init.d/nginx start
5. nginx のバージョンを確認します
nginx -v
6. php+mysql を設定します。
sudo apt-get install php5-cli php5-cgi mysql-server php5-mysql
7. FastCgi をインストールします
sudo apt-get install spawn-fcgi
8. nginx を設定します
sudo vi /etc/nginx/conf.d/default.conf
location / {
root /usr/share/nginx/html;
indexindex.phpindex.htmlindex.htm;#Addindex.php
}
9 、nginx を再起動します
sudo /etc/init.d/nginx restart
10. fastcig php
spawn-fcgi -a 127.0.0.1 -p 9000 -C 10 を起動します。 -u nginx -f /usr/bin/php-cgi & #ここに注意してください: 初めて & を追加しましたが、理由はまだわかりません
パラメータの意味は次のとおりです
* -f FastCGI を呼び出すプロセスの実行者の場所を指定します。
* -a アドレス addr
* -p ポート port* -s Bind Unix ソケット パスへのパスを設定します
* -C 生成される FastCGI プロセスの数を指定します。デフォルトは 5 (PHP のみ)
* -P 生成される FastCGI プロセスの PID ファイル パスを指定しますprocess
* -u および -g FastCGI を実行するにはどのような ID を使用する必要がありますか (-u ユーザー -g ユーザー グループ)。Ubuntu では www-data を使用できます。その他は、nobody、Apache など、状況に応じて設定できます。など。これで、プローブまたは php ファイルを Web ルート ディレクトリに配置できるようになりました。テストしました
11. スタートアップを追加します:
sudo vi /etc/rc.local
/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 - C 10 -u nginx -f /usr/bin/php-cgi exit 0 の前に追加されます。
12. 入力ファイルが指定されていないエラー
sudo vi /etc/nginx/conf.d/default.conf
このフィールド
場所 ~ 。 php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx /html$fastcgi_script_name;
include fastcgi_params;
}
注
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
/usr/share/nginx/html を Web サイトのルート ディレクトリ (通常はこれ) に変更します。
サーバーフィールドの下のルートディレクトリは、Web サイトのルートディレクトリと一致しています
13. Yahei プローブを使用して Web サーバーを検出します。Yahei プローブの PHP ファイル (tz.php) を /usr にダウンロードします。 / share/nginx/html
#sudo chown ngixn tz.php
#sudo chmod u+rwz tz.php
「localhost:88/tz.php」と入力します。ブラウザを使用してWebサービスのステータスを確認します。
14. discuz フォーラムをインストールします
(1) /usr/share/nginx/html に新しいディレクトリ bbs を作成します: #mdir bbs、discuz X3.1 バージョンの discuz.zip をダウンロードしてアップロードしますbbs
(2) #sudo unzip discuz.zip
(3) #sudo chmod -R 777 discuz
(4) ブラウザに localhost:88/bbs/upload/install と入力して、フォーラムのインストールを開始します。

ホット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)

ホットトピック











セッションハイジャックは、次の手順で達成できます。1。セッションIDを取得します。2。セッションIDを使用します。3。セッションをアクティブに保ちます。 PHPでのセッションハイジャックを防ぐための方法には次のものが含まれます。1。セッション_regenerate_id()関数を使用して、セッションIDを再生します。2。データベースを介してストアセッションデータを3。

JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

PHP開発における固体原理の適用には、次のものが含まれます。1。単一責任原則(SRP):各クラスは1つの機能のみを担当します。 2。オープンおよびクローズ原理(OCP):変更は、変更ではなく拡張によって達成されます。 3。Lischの代替原則(LSP):サブクラスは、プログラムの精度に影響を与えることなく、基本クラスを置き換えることができます。 4。インターフェイス分離原理(ISP):依存関係や未使用の方法を避けるために、細粒インターフェイスを使用します。 5。依存関係の反転原理(DIP):高レベルのモジュールと低レベルのモジュールは抽象化に依存し、依存関係噴射を通じて実装されます。

phpstormでCLIモードをデバッグする方法は? PHPStormで開発するときは、PHPをコマンドラインインターフェイス(CLI)モードでデバッグする必要がある場合があります。

システムが再起動した後、UnixSocketの権限を自動的に設定する方法。システムが再起動するたびに、UnixSocketの許可を変更するために次のコマンドを実行する必要があります:sudo ...

静的結合(静的::) PHPで後期静的結合(LSB)を実装し、クラスを定義するのではなく、静的コンテキストで呼び出しクラスを参照できるようにします。 1)解析プロセスは実行時に実行されます。2)継承関係のコールクラスを検索します。3)パフォーマンスオーバーヘッドをもたらす可能性があります。

PHP開発でPHPのCurlライブラリを使用してJSONデータを送信すると、外部APIと対話する必要があることがよくあります。一般的な方法の1つは、Curlライブラリを使用して投稿を送信することです。
