PHP 管理 nginx 仮想ホスト シェル スクリプトの例、nginxshell_PHP チュートリアル
php管理nginx仮想ホストシェルスクリプトインスタンス、nginxshell
この記事の例は、PHP 管理 nginx 仮想ホスト シェル スクリプトを説明しており、参考のために全員と共有されています。具体的な分析は次のとおりです:
phpをシェルスクリプトとして使うととても便利です。もちろん、php スクリプトを使用して nginx 仮想ホストを管理することもできます。参考までに、作成者のスクリプト ファイルを次に示します。
start: fwrite(STDOUT,"============Vhost Script===========n");
fwrite(STDOUT,"= 操作 n を選択してください");
fwrite(STDOUT,"= 1.作成 2.削除 3.終了");
fwrite(STDOUT,"==================================n");
$operate = トリム(fgets(STDIN));
if ( $operate == 1 ){
fwrite(STDOUT,"ドメイン名を入力してください:");
$domain = トリム(fgets(STDIN));
$path = "/home/sites/{$domain}";
$nginx_conf = "/etc/nginx/sites/{$domain}";
$nginx_template = "/etc/nginx/template/site_conf";
$apache_conf = "/etc/httpd/conf/httpd.conf";
$conf_str = "";
//変数の初期化
if( file_exists($path ) ) exit ("ドメインが存在しました!n");
else mkdir($path,0700);
if(file_exists($nginx_conf)) exit ("Nginx 構成ファイルが存在しました!n");
他に{
$conf_str = file_get_contents( $nginx_template );
}
//ディレクトリの検出と設定ファイルのコピー
eval ( "$conf_str = "$conf_str";" );
$succes = file_put_contents($nginx_conf,$conf_str);
if( !$succes ) exit ("構成ファイルの書き込みエラー!");
else echo "Vhost の作成に成功しました!n";
スタートに移動;
//設定ファイルを書き込む
}
else if ($operate == 2){
$confs_dir = dir("/etc/nginx/sites");
$confs_list = array();
$count = 0;
While ( false !== ( $conf_file = $confs_dir->read() ) ){
if( $conf_file == "." ) 続行;
If( $conf_file == ".." ) 続行;
If ( is_file( $confs_dir->path ."/". $conf_file) ) {
$confs_list[$count++] = $conf_file;
}
}
echo "削除するサイトを番号で選択してください:n";
If( count( $confs_list ) >0 )
foreach ( $confs_list as $k=>$v ){
echo "{$k}. $vn";
}
$index = トリム(fgets(STDIN));
If( in_array ( $index,array_keys( $confs_list ) ) ){
copy( $confs_dir->path ."/". $confs_list[$index],"/etc/nginx/backup/{$confs_list[$index]}" );
unlink ( $confs_dir->path ."/". $confs_list[$index] );
exec("tar -zcf /home/sites/{$confs_list[$index]}.tar.gz /home/sites/".$confs_list[$index] );
exec("rm -Rf /home/sites/".$confs_list[$index]);
}
//指定された構成を削除し、バックアップを保存します
}
else if( $operate == 3 ) {
終了します;
}
他に{
exit (「操作が選択されていません!」);
}
?>
聞いてください80;
サーバー名 {$ドメイン};
access_log /var/log/nginx/{$domain}_access_log;
error_log /var/log/nginx/{$domain}_error_log;
ルート {$path};
#サイトアイコンへの訪問を記録しないでください
場所 = /favicon.ico {
ログが見つかりませんでした;
access_log off;
}
#robots.txt へのアクセスをログに記録しないでください
場所 = /robots.txt {
すべてを許可します;
ログが見つかりませんでした;
access_log off;
}
場所 = / {
try_files @proxy;
}
場所 / {
インデックスindex.htmインデックス.htmlインデックス.php;
try_files $uri @proxy;
}
#マッチhtml
location ~* .(html|htm)$ {
有効期限は 30 秒です;
gzip オフ;
add_header コンテンツ エンコーディング gzip;
try_files $uri $uri/ /wp-content/cache/supercache/$http_host/$request_uri/index.html.gz @proxy;
}
#画像、スクリプトファイルなどを一致させます
location ~* .(jpe?g|gif|png|ico|css|js|flv|swf|avi|zip|rar|svg|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt |tar|mp3)$ {
有効期限は 30 日です;
}
#Apacheに渡す
場所 @proxy {
インデックスindex.htmインデックス.htmlインデックス.php;
proxy_pass http://127.0.0.1:81;
/etc/nginx/proxy.conf を含めます;
}
}
この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

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

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

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

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

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

ホットトピック











PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

CakePHP はオープンソースの MVC フレームワークです。これにより、アプリケーションの開発、展開、保守がはるかに簡単になります。 CakePHP には、最も一般的なタスクの過負荷を軽減するためのライブラリが多数あります。

CakePHP へのログインは非常に簡単な作業です。使用する関数は 1 つだけです。 cronjob などのバックグラウンド プロセスのエラー、例外、ユーザー アクティビティ、ユーザーが実行したアクションをログに記録できます。 CakePHP でのデータのログ記録は簡単です。 log()関数が提供されています
