亚洲免费乱码视频,日韩 欧美 国产 动漫 一区,97在线观看免费视频播国产,中文字幕亚洲图片

      1. <legend id="ppnor"></legend>

      2. 
        
        <sup id="ppnor"><input id="ppnor"></input></sup>
        <s id="ppnor"></s>

        php管理nginx虛擬主機(jī)shell腳本

        字號(hào):


            使用php作為shell腳本是一件很方便的事情。理所當(dāng)然,我們可以使用php腳本來(lái)管理 nginx虛擬主機(jī),下面是筆者的 腳本 文件供各位參考
            代碼如下:
            >
            #!/usr/bin/php -q
            <?php
            start: fwrite(STDOUT,"===========Vhost Script===========\n");
            fwrite(STDOUT,"= Choose an operation \n");
            fwrite(STDOUT,"= 1.Create 2.Delete 3.Exit\n");
            fwrite(STDOUT,"==================================\n");
            $operate = trim(fgets(STDIN));
            if ( $operate == 1 ){
            fwrite(STDOUT,"Please Enter a Domain Name:");
            $domain = trim(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 ("Domain Existed!\n");
            else mkdir($path,0700);
            if(file_exists($nginx_conf)) exit ("Nginx Config file existed!\n");
            else {
            $conf_str = file_get_contents( $nginx_template );
            }
            //目錄檢測(cè)及配置文件拷貝
            eval ( "\$conf_str = \"$conf_str\";" );
            $succes = file_put_contents($nginx_conf,$conf_str);
            if( !$succes ) exit ("Write Config File Fauile!");
            else echo "Create Vhost success!\n";
            goto start;
            //寫入配置文件
            }
            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 == "." ) continue;
            if( $conf_file == ".." ) continue;
            if ( is_file( $confs_dir->path ."/". $conf_file) ) {
            $confs_list[$count++] = $conf_file;
            }
            }
            echo "Select a site by number which to delete:\n";
            if( count( $confs_list ) >0 )
            foreach ( $confs_list as $k=>$v ){
            echo "{$k}. $v\n";
            }
            $index = trim(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]);
            }
            //刪除指定配置,并保存?zhèn)浞?BR>    }
            else if( $operate == 3 ) {
            exit;
            }
            else {
            exit ("No Operation Selected!");
            }?>
            下面是nginx的配置模版
            代碼如下:
            >
            server {
            listen 80;
            server_name {$domain};
            access_log /var/log/nginx/{$domain}_access_log;
            error_log /var/log/nginx/{$domain}_error_log;
            root {$path};
            #不記錄對(duì)站點(diǎn)圖標(biāo)訪問
            location = /favicon.ico {
            log_not_found off;
            access_log off;
            }
            #不記錄對(duì)robots.txt的訪問
            location = /robots.txt {
            allow all;
            log_not_found off;
            access_log off;
            }
            location = / {
            try_files @proxy;
            }
            location / {
            index index.htm index.html index.php;
            try_files \$uri @proxy;
            }
            #匹配html
            location ~* \.(html|htm)$ {
            expires 30s;
            gzip off;
            add_header Content-Encoding 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)$ {
            expires 30d;
            }
            #傳遞給apache
            location @proxy {
            index index.htm index.html index.php;
            proxy_pass http://127.0.0.1:81;
            include /etc/nginx/proxy.conf;
            }
            }