From dd8fa17a36550374aa548df77b5c31b8af58274c Mon Sep 17 00:00:00 2001 From: Mitesh Shah Date: Tue, 11 Jun 2013 12:28:09 +0530 Subject: [PATCH] Moved PHP & ZZZ in .oldstuff --- .oldstuff/php/config-sample.php | 39 ++++++++ .oldstuff/php/create.php | 158 ++++++++++++++++++++++++++++++++ .oldstuff/php/example.com | 22 +++++ .oldstuff/php/init.php | 54 +++++++++++ .oldstuff/php/move.php | 156 +++++++++++++++++++++++++++++++ .oldstuff/php/remove.php | 107 +++++++++++++++++++++ .oldstuff/php/test.php | 11 +++ .oldstuff/php/touch.php | 123 +++++++++++++++++++++++++ .oldstuff/zzz/make_site.sh | 65 +++++++++++++ .oldstuff/zzz/make_vhost.sh | 35 +++++++ .oldstuff/zzz/restart.sh | 3 + 11 files changed, 773 insertions(+) create mode 100755 .oldstuff/php/config-sample.php create mode 100755 .oldstuff/php/create.php create mode 100755 .oldstuff/php/example.com create mode 100755 .oldstuff/php/init.php create mode 100755 .oldstuff/php/move.php create mode 100755 .oldstuff/php/remove.php create mode 100755 .oldstuff/php/test.php create mode 100755 .oldstuff/php/touch.php create mode 100755 .oldstuff/zzz/make_site.sh create mode 100755 .oldstuff/zzz/make_vhost.sh create mode 100755 .oldstuff/zzz/restart.sh diff --git a/.oldstuff/php/config-sample.php b/.oldstuff/php/config-sample.php new file mode 100755 index 00000000..a2582b92 --- /dev/null +++ b/.oldstuff/php/config-sample.php @@ -0,0 +1,39 @@ + diff --git a/.oldstuff/php/create.php b/.oldstuff/php/create.php new file mode 100755 index 00000000..42fccd25 --- /dev/null +++ b/.oldstuff/php/create.php @@ -0,0 +1,158 @@ + /dev/null"; +$result = system($command); + +//Error check +if ($result != '') { + die("\nError encountered while extracting latest wordpress in directory " . $domain['rootdir'] . "\n"); +} + +$command = "mv " . $domain['htdocs'] . "/wordpress/* " . $domain['htdocs'] . "/"; +echo "\n COMMAND :: $command \n"; +$result = system($command); + +//Error check +if ($result != '') { + die("\nError encountered while moving latest wordpress in directory " . $domain['rootdir'] . "\n" . $result); +} + +/** + * MySQL Creation + */ + +$command = "mysql -h " . $local_env['mysql_host'] . " -u " . $local_env['mysql_user'] . " -p" . $local_env['mysql_pass'] . " -e 'create database `'" . $domain['name'] . "'` '"; +$result = system($command); + +/* + * Create wp-config.php + */ +$wp_config_sample = $domain['htdocs'] . "/wp-config-sample.php"; + +$command = "sed s/database_name_here/{$domain['name']}/ $wp_config_sample | sed s/username_here/{$local_env['mysql_user']}/ | sed s/password_here/{$local_env['mysql_pass']}/ > {$domain['htdocs']}/wp-config.php"; + +$result = system($command); + +/** + * Chown + */ +$command = "chown -R " . $local_env['nginx_user'] . ":" . $local_env['nginx_group'] . " " . $domain['rootdir']; +echo "\n COMMAND :: $command \n"; +$result = system($command); + +//Error check +if ($result != '') { + die("\nError encountered while charging owner of " . $domain['rootdir'] . "\n" . $result); +} + + +/** + * ALL SEENS WELL - Restart nginx + */ +echo "\n Relaoding nginx configuration...\n\n"; +system('service nginx reload'); + +/** + * THE END + */ +//just echo URL for new domain like http://$domain +//user will click it and verify if its working fine! ;-) + +echo $domain['name'] . " Successfully created\n\n"; + +?> diff --git a/.oldstuff/php/example.com b/.oldstuff/php/example.com new file mode 100755 index 00000000..92244579 --- /dev/null +++ b/.oldstuff/php/example.com @@ -0,0 +1,22 @@ +server{ + server_name www.example.com example.com; + + access_log /var/log/nginx/example.com.access.log ; + error_log /var/log/nginx/example.com.error.log; + + root /var/www/example.com/htdocs; + index index.php index.html index.htm; + + ## PHP with FATSCGI + location ~ \.php$ { + include /etc/nginx/fastcgi_params; + fastcgi_pass 127.0.0.1:9000; + fastcgi_index index.php; + } + + #root dir + location / { + autoindex on; + try_files $uri $uri/ /index.php; + } +} diff --git a/.oldstuff/php/init.php b/.oldstuff/php/init.php new file mode 100755 index 00000000..28346bde --- /dev/null +++ b/.oldstuff/php/init.php @@ -0,0 +1,54 @@ + diff --git a/.oldstuff/php/move.php b/.oldstuff/php/move.php new file mode 100755 index 00000000..78590706 --- /dev/null +++ b/.oldstuff/php/move.php @@ -0,0 +1,156 @@ + $domain + */ +function move_domain($usr_domain) { + global $local_env, $remote_env; + + if(trim($usr_domain) == ''){ + echo "\n CURRENT DOMAIN IS SKIPPED\n"; + return; + } + + /* + * Set domain environment values + */ + $domain['name'] = $usr_domain; + $domain['conf'] = $local_env['nginx_dir_sites_avilable'] . '/' . $domain['name']; + $domain['rootdir'] = $local_env['webroot'] . '/' . $domain['name']; + $domain['htdocs'] = $domain['rootdir'] . '/' . $local_env['htdocs'] ; + $domain['logs'] = $domain['rootdir'] . '/' . $local_env['logs'] ; + + /** + * Check if domain config file already exists + */ + if (file_exists($domain['conf'])) { + echo "\nConfiguration files for domain '" . $domain['name'] . "'already exists :: " . $domain['conf']; + echo "\nDo you want to overwrite previous configuration? [Y/N] (default=Y)"; + + if (in_array(strtolower(fgets(STDIN)), array('n', 'no'))) { + die("\nYou choose to terminate this script! Bye-Bye!!! \n"); + } + } + + /** + * At this point - either domain config file doesn't exist or user showed interest in overwriting it + * In either case... + * Create nginx conf for $domain in /etc/nginx/sites-available/$domain + * TODO :: Provide options to add supercache and/or w3total cache rules + */ + /** + * Create config file + */ + $nginx_conf = file_get_contents($local_env['default_conf']); + $nginx_conf = str_replace($local_env['default_domain'], $domain['name'], $nginx_conf); + file_put_contents($domain['conf'], $nginx_conf); + +//Error Check - if config file is created successfully or not + if (!file_exists($domain['conf'])) { + die("\nError encounterd while creating " . $domain['conf']); + } + + /** + * Linking config file + */ + echo "\nCreating Symbolic Link..\n"; + $command = "sudo ln -s " . $domain['conf'] . " " . $local_env['nginx_dir_sites_enabled']; + $result = system($command); + +//Error check - if linking config file succeed + if ($result != '') { + die("\nError encountered while creating script. Please check if file '" . $domain['conf'] . "'is created or not!\n"); + } + +//Go Ahead. +// echo "Nginx configuration for '" . $domain['name'] . "' is created successfully"; + + /** + * Create webroot dirs for new domain + */ +//create dirs + $result = system("mkdir " . $domain['rootdir']); + $result = system("mkdir " . $domain['htdocs']); + $result = system("mkdir " . $domain['logs']); + +//create log files + $result = system("touch " . $domain['logs'] . "/access.log"); + $result = system("touch " . $domain['logs'] . "/error.log"); + +//Error check + if ($result != '') { + die("\nError encountered while creating websites directories & files for " . $domain['name'] . "\n"); + } + + /** + * moving wordpress in new webroot dir + */ +//export remote db + $command = "rsync --exclude '*.iso' -avz {$remote_env['ssh_user']}@{$remote_env['host']}:{$remote_env['webroot']}/{$domain['name']}/htdocs/* {$domain['htdocs']}/"; + $result = system($command); + + + /** + * MySQL Moving + */ + $wp_config = get_defines($domain['htdocs'] . '/wp-config.php'); + + $command = "mysqldump -u {$wp_config['DB_USER']} -p{$wp_config['DB_PASSWORD']} -h {$remote_env['host']} --databases '{$wp_config['DB_NAME']}' > {$domain['rootdir']}/{$domain['name']}.sql"; +// echo "\n" . $command . "\n"; + $result = system($command); + + $command = "mysql -h {$local_env['mysql_host']} -u {$local_env['mysql_user']} -p{$local_env['mysql_pass']} < {$domain['rootdir']}/{$domain['name']}.sql"; +// echo "\n\n" . $command . "\n"; + $result = system($command); + + /* + * Create wp-config.php + */ + //this may not be needed as we already have wp-config.php present for remote WordPress + //@TODO we need to replace DB_HOST though + + + /** + * Chown + */ + $command = "chown -R " . $local_env['nginx_user'] . ":" . $local_env['nginx_group'] . " " . $domain['rootdir']; + echo "\n COMMAND :: $command \n"; + $result = system($command); + +//Error check + if ($result != '') { + die("\nError encountered while chaging owner of " . $domain['rootdir'] . "\n" . $result); + } +} +?> \ No newline at end of file diff --git a/.oldstuff/php/remove.php b/.oldstuff/php/remove.php new file mode 100755 index 00000000..25c64788 --- /dev/null +++ b/.oldstuff/php/remove.php @@ -0,0 +1,107 @@ + \ No newline at end of file diff --git a/.oldstuff/php/test.php b/.oldstuff/php/test.php new file mode 100755 index 00000000..a83076cf --- /dev/null +++ b/.oldstuff/php/test.php @@ -0,0 +1,11 @@ + diff --git a/.oldstuff/php/touch.php b/.oldstuff/php/touch.php new file mode 100755 index 00000000..2e15746f --- /dev/null +++ b/.oldstuff/php/touch.php @@ -0,0 +1,123 @@ + diff --git a/.oldstuff/zzz/make_site.sh b/.oldstuff/zzz/make_site.sh new file mode 100755 index 00000000..5b920803 --- /dev/null +++ b/.oldstuff/zzz/make_site.sh @@ -0,0 +1,65 @@ +#!/bin/bash +#This script makes virtual host, site directories and log files +#Author : Pragati Sureka + +if [[ $(/usr/bin/id -u) -ne 0 ]]; then + echo "make_vsite:You need to run this script as root(or use sudo)" + exit +fi + +# Check for proper number of command line args. +if [ $# -ne 1 ] +then + echo "Usage: `basename $0` example.com" + echo " " + exit +fi + +sed s/[[:blank:]]*//g $1 > $1 + +#Script Variables +WEBROOT="/var/www" +SKELFILE="/etc/nginx/sites-available/example.com" +VSITEDIR="/etc/nginx/sites-available" +ESITEDIR="/etc/nginx/sites-enabled" +USER="www-data" +GROUP="www-data" +SERVER_RELOAD="service nginx restart" +WP_ZIP="/home/rtcamp/wordpress/latest.zip" #wordpress 3.0 + +#make directories and touch log files +mkdir $WEBROOT/$1 +mkdir $WEBROOT/$1/htdocs +mkdir $WEBROOT/$1/logs +touch $WEBROOT/$1/logs/error.log +touch $WEBROOT/$1/logs/access.log + +#download latest wordpress and extract it to proper location +cd $WEBROOT/$1 +#wget www.wordpress.org/latest.zip +unzip -q -o $WP_ZIP +mv wordpress/* htdocs/ +rm -rf $WEBROOT/$1/wordpress +#rm $WEBROOT/$1/latest.zip +chown -R $USER:$GROUP $WEBROOT/$1 +#chmod g+rw -R $WEBROOT/$1 + +#create database +mysql -u USER -pPASS -e 'create database `'$1'` ' + +#create wp-config.php file +CONFIGSAMPLE=$WEBROOT/$1/htdocs/wp-config-sample.php +sed s/database_name_here/$1/ $CONFIGSAMPLE | sed s/username_here/USER/ | sed s/password_here/PASS/ > $WEBROOT/$1/htdocs/wp-config.php + +#copy skeleton file and enable site +sed s/example.com/$1/ $SKELFILE > $VSITEDIR/$1 +ln -s $VSITEDIR/$1 $ESITEDIR/ +echo "127.0.0.1 $1" >> /etc/hosts +$SERVER_RELOAD +if [ $? -ne 0 ]; then + #rm -rf $WEBROOT/$1 + unlink $ESITEDIR/$1 + $SERVER_RELOAD + sed -i".bak" '$d' /etc/hosts + echo "ERROR CREATING PLEASE CONTACT pragati.sureka@rtcamp.com FOR ASSISTANCE!" +fi \ No newline at end of file diff --git a/.oldstuff/zzz/make_vhost.sh b/.oldstuff/zzz/make_vhost.sh new file mode 100755 index 00000000..e16eb614 --- /dev/null +++ b/.oldstuff/zzz/make_vhost.sh @@ -0,0 +1,35 @@ +#!/bin/bash +#This script makes virtual host, site directories and log files +#Author : Pragati Sureka, rahul286 + +if [[ $(/usr/bin/id -u) -ne 0 ]]; then + echo "make_vsite:You need to this script as root(or use sudo)" + exit +fi + +#Script Variables +WEBROOT="/var/www" +SKELFILE="/etc/apache2/sites-available/skeleton" +VSITEDIR="/etc/apache2/sites-available" +USER="www-data" +GROUP="www-data" +SERVER_RELOAD="/etc/init.d/apache2 reload" + +#make directories and touch log files +mkdir $WEBROOT/$1 +mkdir $WEBROOT/$1/htdocs +mkdir $WEBROOT/$1/logs +touch $WEBROOT/$1/logs/error.log +touch $WEBROOT/$1/logs/custom.log + +#copy skeleton file and enable site +sed s/site/$1/ $SKELFILE > $VSITEDIR/$1 +a2ensite $1 &> /dev/null +echo "127.0.0.1 $1" >> /etc/hosts +$SERVER_RELOAD &> /dev/null +if [ $? -ne 0 ]; then + rm -rf $WEBROOT/$1 + a2dissite $1 + sed -i".bak" '$d' /etc/hosts + echo "ERROR CREATING PLEASE CONTACT pragati.sureka@rtcamp.com FOR ASSISTANCE!" +fi diff --git a/.oldstuff/zzz/restart.sh b/.oldstuff/zzz/restart.sh new file mode 100755 index 00000000..ade0275a --- /dev/null +++ b/.oldstuff/zzz/restart.sh @@ -0,0 +1,3 @@ +service mysql stop +service php5-fpm restart +service mysql start