Browse Source

update benchmarks to support ngnix

Jason Hinkle 12 years ago
parent
commit
766459397f
2 changed files with 143 additions and 8 deletions
  1. 130 0
      phreeze/deploy/ngnix.conf
  2. 13 8
      phreeze/setup.py

+ 130 - 0
phreeze/deploy/ngnix.conf

@@ -0,0 +1,130 @@
+#user  nobody;
+worker_processes  8;
+
+#error_log  logs/error.log;
+#error_log  logs/error.log  notice;
+#error_log  logs/error.log  info;
+
+#pid        logs/nginx.pid;
+
+
+events {
+    worker_connections  1024;
+}
+
+
+http {
+    include       /usr/local/nginx/conf/mime.types;
+    default_type  application/octet-stream;
+
+    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
+    #                  '$status $body_bytes_sent "$http_referer" '
+    #                  '"$http_user_agent" "$http_x_forwarded_for"';
+
+    #access_log  logs/access.log  main;
+
+    sendfile        on;
+    #tcp_nopush     on;
+
+    #keepalive_timeout  0;
+    keepalive_timeout  65;
+
+    #gzip  on;
+
+    server {
+        listen       8080;
+        server_name  localhost;
+
+        #charset koi8-r;
+
+        #access_log  logs/host.access.log  main;
+
+        #location / {
+        #    root   html;
+        #    index  index.html index.htm;
+        #}
+
+        #error_page  404              /404.html;
+
+        # redirect server error pages to the static page /50x.html
+        #
+        #error_page   500 502 503 504  /50x.html;
+        #location = /50x.html {
+        #    root   html;
+        #}
+
+        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
+        #
+        #location ~ \.php$ {
+        #    proxy_pass   http://127.0.0.1;
+        #}
+
+        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
+        #
+        location ~ \.php$ {
+            root /home/ubuntu/FrameworkBenchmarks;
+            fastcgi_pass   127.0.0.1:9001;
+            fastcgi_index  index.php;
+#            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
+            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
+            include        /usr/local/nginx/conf/fastcgi_params;
+        }
+
+	    # url rewriting for a Phreeze application called "example" 
+	    #
+	    location ~ ^/phreeze/(.*) {
+	        try_files /phreeze/$1 /phreeze/$1/ /phreeze/index.php?_REWRITE_COMMAND=$1&args;
+	    }
+	    
+	    # url rewriting for phreeze app that is installed in the htdocs root
+	    #
+	    #location ~ ^/(.*) {
+	    #    try_files /$1 /$1/ /index.php?_REWRITE_COMMAND=$1&args;
+	    #}
+    
+        # deny access to .htaccess files, if Apache's document root
+        # concurs with nginx's one
+        #
+        #location ~ /\.ht {
+        #    deny  all;
+        #}
+    }
+
+
+    # another virtual host using mix of IP-, name-, and port-based configuration
+    #
+    #server {
+    #    listen       8000;
+    #    listen       somename:8080;
+    #    server_name  somename  alias  another.alias;
+
+    #    location / {
+    #        root   html;
+    #        index  index.html index.htm;
+    #    }
+    #}
+
+
+    # HTTPS server
+    #
+    #server {
+    #    listen       443;
+    #    server_name  localhost;
+
+    #    ssl                  on;
+    #    ssl_certificate      cert.pem;
+    #    ssl_certificate_key  cert.key;
+
+    #    ssl_session_timeout  5m;
+
+    #    ssl_protocols  SSLv2 SSLv3 TLSv1;
+    #    ssl_ciphers  HIGH:!aNULL:!MD5;
+    #    ssl_prefer_server_ciphers   on;
+
+    #    location / {
+    #        root   html;
+    #        index  index.html index.htm;
+    #    }
+    #}
+
+}

+ 13 - 8
phreeze/setup.py

@@ -1,6 +1,7 @@
 import subprocess
 import sys
 import setup_util
+import os
 from os.path import expanduser
 
 home = expanduser("~")
@@ -9,20 +10,24 @@ def start(args):
   setup_util.replace_text("phreeze/index.php", "localhost:3306", "" + args.database_host + ":3306")
   setup_util.replace_text("phreeze/deploy/phreeze", "\".*\/FrameworkBenchmarks", "\"" + home + "/FrameworkBenchmarks")
   setup_util.replace_text("phreeze/deploy/phreeze", "Directory .*\/FrameworkBenchmarks", "Directory " + home + "/FrameworkBenchmarks")
-
+  setup_util.replace_text("phreeze/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
+  
   try:
-    subprocess.check_call("sudo cp phreeze /etc/apache2/sites-available/", shell=True)
-    subprocess.check_call("sudo a2ensite phreeze", shell=True)
-    subprocess.check_call("sudo chown -R www-data:www-data phreeze", shell=True)
-    subprocess.check_call("sudo /etc/init.d/apache2 start", shell=True)
+    #subprocess.check_call("sudo cp php/deploy/phreeze /etc/apache2/sites-available/", shell=True)
+    #subprocess.check_call("sudo a2ensite php", shell=True)
+    #subprocess.check_call("sudo chown -R www-data:www-data php", shell=True)
+    #subprocess.check_call("sudo /etc/init.d/apache2 start", shell=True)
+    subprocess.check_call("sudo php-fpm --fpm-config config/php-fpm.conf -g " + home + "/FrameworkBenchmarks/phreeze/deploy/php-fpm.pid", shell=True)
+    subprocess.check_call("sudo /usr/local/nginx/sbin/nginx -c " + home + "/FrameworkBenchmarks/phreeze/deploy/nginx.conf", shell=True)
+    
     return 0
   except subprocess.CalledProcessError:
     return 1
 def stop():
   try:
-    subprocess.check_call("sudo a2dissite phreeze", shell=True)
-    subprocess.check_call("sudo /etc/init.d/apache2 stop", shell=True)
-    subprocess.check_call("sudo chown -R $USER:$USER phreeze", shell=True)
+    subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
+    subprocess.call("sudo kill -QUIT $( cat phreeze/deploy/php-fpm.pid )", shell=True)
+    
     return 0
   except subprocess.CalledProcessError:
     return 1