Reply to comment

Blog Anywhere using PHP

The following script will allow you to host your existing blog in a new domain, without having to migrate or move anything. It is brought to us by Hasin Hayder. Hasin is a well known figure in the PHP community. Hasin is a true PHP Guru, has written several books and all around nice guy.

Step 1 - The Script

<?php
$dataurl =$primaryurl = “http://hasin.wordpress.com”;//old domain
$secondaryurl = “http://blog.ofhas.in”; //new domain
$path =array_keys($_GET);
if(!empty($path[0])) $dataurl = “{$primaryurl}/{$path[0]}”;
$data = file_get_contents($dataurl);
$pattern = “~{$primaryurl}/([\d\S\/]+)~”;
$data = preg_replace($pattern,”{$secondaryurl}/$1″,$data);
$data = str_replace(array(”<a href=\”{$primaryurl}”,”<form action=\”{$secondaryurl}”),array(”<a href=\”{$secondaryurl}”,”<form action=\”{$primaryurl}”),$data);
echo $data;
?>

Step 2 - Modify/write .htaccess file in the root of this new domain

RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{QUERY_STRING} (.+)
RewriteRule ^(.*)$ index.php?$1&%{QUERY_STRING}


RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?$1

Hasin writes:

"This script will also change the urls of all your post and pagination, behaves exactly same as you have hosted your blog in this new url. only drawback is submitting a comment will take you to your original domain, but you can easily fix that but simulating a POST request using curl/stream wrapper/fopen. there is one more vital drawback which is you may lose some IP specific traffic data

have a look at my actual blog http://hasin.wordpress.com and new one at http://blog.ofhas.in"

You will find Hasin blogs informative, educational with a twisted humor!

Reply

  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.

More information about formatting options