手順: このチュートリアルには主に次の 3 つの部分が含まれています:
1. ソース コードのコンパイルと Nginx のインストール2. ソース コードのコンパイルと php および mysql、redis 拡張モジュールのインストール
3仮想ホストを構成します
この記事に含まれるインストール パッケージ プログラムはすべてダウンロード リンクを提供していますので、ご利用ください
実行環境と前提条件: Ubuntu 12.04 LTS には g++ コンパイル環境がインストールされています
すべてのソース プログラムのパスは次の場所にあります: root以下に示す @ubuntu:/home/shihai /Desktop/Nginx フォルダー:
プログラムのインストール パスは次の場所にあります: /usr/local フォルダー
パート1: Nginx をインストールする
Nginx をインストールする前に、依存ライブラリである PCRE ライブラリ、zlib ライブラリ、SSL ライブラリをインストールする必要があります
PCRE ライブラリをインストール??tar ?zxvf pcre-8.21 を書き換えるために
。 tar.gz cd pcre-8.21
./ configure --prefix=/usr/local/pcre-8.21
make
make install
zlibライブラリをインストール
??gzip圧縮用
tar ?zxvf zlib-1.2.8.tar.gz cd zlib-1.2.8
./configure --prefix=/usr/local/zlib-1.2.8
make
make install
ssl ライブラリをインストールします
??ssl 暗号化をサポートします
tar - zxvf openssl-1.0.1c.tar.gz cd openssl-1.0.1c
./config --prefix=/usr/local/openssl-1.0.1
make
make install
install nginx??
サーバーソフトウェア
tar -zxvf nginx-1.2.8.tar.gz cd nginx-1.2.8
./configure -- prefix=/usr/local/nginx-1.2.8
--with-pcre=../pcre-8.21/
--with-zlib=../zlib-1.2.8/
make
make install
nginx 起動設定ファイルを設定します
/usr/local/nginx-1.2.8/sbin# ./nginx -c /usr/local/nginx-1.2.8/conf/nginx.conf
/ usr/local/nginx-1.2.8/sbin# ./nginx -s reload
View nginx process
ps ?ef|grep nginx
Open localhost
上の画像は、Nginx サーバーが正常にインストールされたことを意味します
NCURSES をインストールします ?? MySQL フロント条件をインストールします:
Tar -ZXVF NCURSES-5.4.gzCD NCURSES-5.4 + l-5.1 .73 ./configure --prefix=/usr/local/mysql-5.1.73
make
make install
インストールcurl ライブラリ??curl リクエスト用
tar -zxvfカール- 7.39.0.tar.gz
./configure --prefix=/usr/local/curl-7.39.0 make
make install
php
tar -zxvf php-5.2 をインストールします。 14.tar.gz
gunzip php-5.2.14-fpm-0.5.14.diff.gz
patch -d php-5.2.14 -p1 cd php-5.2.14
./configure --prefix=/usr/local/php-5.2.14
--enable-fastcgi
--enable-fpm
--enable-sockets
--enable-mbstring
--with-mysql=/usr/local/mysql-5.1.73 --with-mysqli=/usr/local /mysql-5.1.73/bin/mysql_config
--with -pdo-mysql=/usr/local/mysql-5.1.73
--with-curl=/usr/local/curl-7.39.0
--with-openssl=/usr/local/openssl-1.0. 1
--with-mcrypt
make
make install
次のコマンドを使用して php-fpm を起動します:
/usr/local/ php-5.2.14/sbin# ./php-fpm start
php-fpm
の起動時に表示されます startingphp_fpm Dec 29 15:27:32.502790 [ERROR] fpm_unix_conf_wp()、124 行目: root、プール以外のユーザーとグループを指定してください「デフォルト」解決策: /usr/local /php-5.2.14/etc ディレクトリを入力します。php-fpm.conf を変更するだけです
php- プロセスのグループ
を削除するだけです。ユーザー/グループについては、実際の状況に応じて変更してください(www)。
RESTART /USR/LOCAL/PHP-5.2.14/SBIN# ./PHP-FPM RESTART RESTARTに成功しましたREDIS拡張モジュールのインストールREDIS拡張モジュール:
UNZIPPHPREDIS-MASTER.ZIPEXPORTPATH=/ usr/local/php-5.2.14/bin/:$PATH
cp -r phpredis-master php-5.2.14/ext/
cd php-5.2.14/ext/phpredis-master
phpize
./configure--with-php-config=/usr/local/php-5.2.14/bin/php-config
make
make install
拡張ライブラリパス: /usr/local/php-5.2. 14/lib/php/extensions/no-debug-non-zts-20060613/
PHP 拡張ライブラリのパスで、コンパイルされた Redis 拡張ライブラリ ファイル redis.so を見つけることができます
パス /usr/local/php を開きます- 5.2.14 /lib/php.ini にある php.ini ファイルについては、次のコマンドを使用します:
vim php.ini
ファイルの内容をすばやく検索するには (「N」を押して、次の一致する位置を見つけます)、次のコマンドを使用します:
:?extension
図に示すように指定された場所を見つけたら、次のコンテンツを挿入します:
extension = redis.so
php は自動的に redis.so ファイルをロードします。拡張ライブラリのパス
If php.ini ファイルが見つからない場合は、次のコマンドを使用してファイル全体を検索できます:
find / -name php.ini
検索結果には次のことが表示されます。 /etc/php5/cli/php.ini ファイルはこのパスに存在するため、それを /usr/local/php-5.2.14/lib にコピーし、コマンド/usr/local/php-5.2 を使用します。 14/lib# cp/etc/php5/cli/php.ini php.ini
ここで 有効にするには、php-fpm を再起動する必要があります:
/usr/local/php-5.2.14/ sbin# ./php-fpmrestart
パート 3: nginx 仮想ホストを構成する
新しい仮想ホスト構成ファイル ディレクトリを作成する/usr/local/nginx-1.2.8# mkdir vhosts
cd vhosts
touch scott.qq.com.conf
vim scottshi.qq.com.conf
次の内容を入力して自己定義仮想ホストを設定します:
server {
listen 8001;/*リッスンポート番号*/
server_name scott.qq.com;/*ドメイン名*/
access_log/usr/local/nginxweb/htdocs/access.log; /*サイトアクセスログ*/
location / {
root /usr/local/nginxweb /htdocs/;/*ページファイルディレクトリ*/indexindex.phpindex.htmlindex.htm;}error_page500502503504 /50x.html;/*サーバーエラーページ*/location = /50x.html {
root html;
}
# 127.0.0.1:9000 の FastCGI サーバーリッスンに PHP スクリプトを渡します
location ~ .php$ {
fastcgi_pass 127.0.0.1:9000; /*Nginx forwardリクエストアドレス*/
fastcgi_indexindex.php;
fastcgi_param SCRIPT_FILENAME/usr/local/nginxweb/htdocs/$fastcgi_script_name
include fastcgi_params;
}
location ~ /.ht {
den;皆さん;
}
}
保存して終了したら、nginx 構成ファイル nginx.conf
/usr/local/nginx-1.2 を入力します。 8/conf# vim nginx.conf
デフォルトのサーバー レベルと並行して、http 内にレベルで、次の内容を追加してカスタム仮想ホストを有効にします:
include /usr/local/nginx-1.2.8/vhosts/* ;
保存して終了した後、nginx サーバーを再起動し、構成ファイルをリロードします。次のコマンドを使用します:
/usr/local/nginx-1.2.8/sbin# ./nginx ?s reload
PHP テスト ページを作成します :
ディレクトリ /usr/local/nginxweb/htdocs/ に入ります、新しい test.php ファイルを作成し、test.php ページのコンテンツを入力します:
Phpinfo();
?>
保存して終了します
ブラウザを使用して、次のアドレスにアクセスします:
scott.qq.com:8001/test.php
このページには、PHP と、fastcgi、mysql、curl、redis などを含むさまざまな機能モジュールを構成する手順が表示されます。

PHPは、動的なWeb開発およびサーバー側のアプリケーションに使用されるサーバー側のスクリプト言語です。 1.PHPは、編集を必要とせず、迅速な発展に適した解釈言語です。 2。PHPコードはHTMLに組み込まれているため、Webページの開発が簡単になりました。 3。PHPプロセスサーバー側のロジック、HTML出力を生成し、ユーザーの相互作用とデータ処理をサポートします。 4。PHPは、データベースと対話し、プロセスフォームの送信、サーバー側のタスクを実行できます。

PHPは過去数十年にわたってネットワークを形成しており、Web開発において重要な役割を果たし続けます。 1)PHPは1994年に発信され、MySQLとのシームレスな統合により、開発者にとって最初の選択肢となっています。 2)コア関数には、動的なコンテンツの生成とデータベースとの統合が含まれ、ウェブサイトをリアルタイムで更新し、パーソナライズされた方法で表示できるようにします。 3)PHPの幅広いアプリケーションとエコシステムは、長期的な影響を促進していますが、バージョンの更新とセキュリティの課題にも直面しています。 4)PHP7のリリースなど、近年のパフォーマンスの改善により、現代の言語と競合できるようになりました。 5)将来的には、PHPはコンテナ化やマイクロサービスなどの新しい課題に対処する必要がありますが、その柔軟性とアクティブなコミュニティにより適応性があります。

PHPの中心的な利点には、学習の容易さ、強力なWeb開発サポート、豊富なライブラリとフレームワーク、高性能とスケーラビリティ、クロスプラットフォームの互換性、費用対効果が含まれます。 1)初心者に適した学習と使用が簡単。 2)Webサーバーとの適切な統合および複数のデータベースをサポートします。 3)Laravelなどの強力なフレームワークを持っています。 4)最適化を通じて高性能を達成できます。 5)複数のオペレーティングシステムをサポートします。 6)開発コストを削減するためのオープンソース。

PHPは死んでいません。 1)PHPコミュニティは、パフォーマンスとセキュリティの問題を積極的に解決し、PHP7.xはパフォーマンスを向上させます。 2)PHPは最新のWeb開発に適しており、大規模なWebサイトで広く使用されています。 3)PHPは学習しやすく、サーバーはうまく機能しますが、タイプシステムは静的言語ほど厳格ではありません。 4)PHPは、コンテンツ管理とeコマースの分野で依然として重要であり、エコシステムは進化し続けています。 5)OpcacheとAPCを介してパフォーマンスを最適化し、OOPと設計パターンを使用してコードの品質を向上させます。

PHPとPythonには独自の利点と短所があり、選択はプロジェクトの要件に依存します。 1)PHPは、Web開発に適しており、学習しやすく、豊富なコミュニティリソースですが、構文は十分に近代的ではなく、パフォーマンスとセキュリティに注意を払う必要があります。 2)Pythonは、簡潔な構文と学習が簡単なデータサイエンスと機械学習に適していますが、実行速度とメモリ管理にはボトルネックがあります。

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

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

PHPで前処理ステートメントとPDOを使用すると、SQL注入攻撃を効果的に防ぐことができます。 1)PDOを使用してデータベースに接続し、エラーモードを設定します。 2)準備方法を使用して前処理ステートメントを作成し、プレースホルダーを使用してデータを渡し、メソッドを実行します。 3)結果のクエリを処理し、コードのセキュリティとパフォーマンスを確保します。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

WebStorm Mac版
便利なJavaScript開発ツール
