1.4.1 version almost ready

Because we have some beta testers now, we get some bugreports and before 1.4.1 I will fix them all.

New features in 1.4.1 are jquery validation on signup form, upload form and embed form.
Validation also checks if the videotitle already exists.

All advertising spots are fixed and personal video ads are added. Now you can upload a video and admin can add a personal ad to the video in admin->all videos->edit.

There are also some changes in rewrite rules for lighttpd, so update the lighttpd.rewrite
In .htaccess and lighttpd.rewrite There is a 403 and 404 error handeling now.

Category page has a jquery dropdown box for selecting the order of video’s.

I made 50 changes for security reasons, the hole script is checked with a scanner and reports save.

The /JAVSadmin/ folder can now be renamed to any foldername like /secretfolder/ (use a .htpasswd)

There now 4 new templates brown, black, red and green

Remember that HD encoding is still experimental.

JAVS1.4.1 can be downloaded on Monday…
Have fun using the script and let me know bugs, problems and use forum to show how you use your site.


Security and signup form

This week we got the security results of the scan we requested and there were some stuff in it that needs changing.
I’m currently thinking about how to annouce secruity problems and fix them as soon as possible

Because of this I made a lot of small changes and used this moment to update the signup form with some jquery.

Sign up form now uses jquery.validation.js to validate everything client site. Because of this we can check everything server-side without echo to the user. If there is an echo now people don;t use javascript or try to hack. Maybe I the future I add some Captcha options.

Next week the new 1.4.1 beta version comes out with 4 new templates (green, red, brown, black) and a lots of security/error updates.


Install all video script requirements on Cent OS

This readme explains how to install lighttpd and everything you need with a video script.

I have a lot of experience with installing server for video script. Since we made this script we had to test a lot of programs like ffmpeg, flvtool2, yamdi, curl, MP4Box and many decoders. After a while I installed a server on Cent OS for a client and written every step down to a easy readme. It will stream video’s with flv and mp4 when your done with it.

Make sure you have installed Yum and updated everything.

//start with this
yum -y install gcc
yum -y install automake
yum -y install libtool
yum -y install bzip2*
yum -y install pcre*
yum -y install make
yum -y install zlib*
yum -y install sendmail
yum -y install curl

yum -y install mysql mysql-server
chkconfig –levels 235 mysqld on
/etc/init.d/mysqld start
mysqladmin -u root password YOURPASSWDHERE
mysqladmin -h -u root password YOURPASSWDHERE

wget http://packages.sw.be/lighttpd/lighttpd-1.4.28-1.el5.rf.i386.rpm
wget http://packages.sw.be/lighttpd/lighttpd-fastcgi-1.4.28-1.el5.rf.i386.rpm
wget http://ftp.heanet.ie/mirrors/pld-linux/dists/2.0/updates/general/i386/lighttpd-mod_h264_streaming-1.4.28-1.i386.rpm
rpm -ivh lighttpd-1.4.28-1.el5.rf.i386.rpm
rpm -ivh lighttpd-fastcgi-1.4.28-1.el5.rf.i386.rpm
rpm -ivh –nodeps lighttpd-mod_h264_streaming-1.4.28-1.i386.rpm

Find this modules and add to modules.conf (/etc/lighttpd/):
Under modules add:
 flv-streaming.extensions = ( “.flv” )
 h264-streaming.extensions = ( “.mp4″ )

 h264-streaming.buffer-seconds = 10
 flv-streaming.buffer-seconds = 10

/etc/init.d/lighthttpd restart

yum -y install lighttpd-fastcgi php-cli
nano /etc/php.ini
 cgi.fix_pathinfo = 1
nano /etc/lighttpd/modules.conf
 uncomment: mod_fastcgi

fastcgi.server             = ( “.php” =>
                               ( “localhost” =>
                                   “socket” => “/tmp/php-fastcgi.socket”,
                                   “bin-path” => “/usr/bin/php-cgi”

/etc/init.d/lighttpd restart
chkconfig –levels 300 lighttpd on

//php with mysql support
yum search php
yum -y install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc
/etc/init.d/lighttpd restart

yum -y install ruby
wget http://rubyforge.org/frs/download.php/17497/flvtool2-1.0.6.tgz
tar -zxvf flvtool2-1.0.6.tgz
cd flvtool2-1.0.6
ruby setup.rb config
ruby setup.rb setup
ruby setup.rb install

yum search ffmpeg
yum install ffmpeg
nano -w /etc/yum.repos.d/dag.repo
 name=Dag RPM Repository for Red Hat Enterprise Linux
rpm –import http://apt.sw.be/RPM-GPG-KEY.dag.txt

wget http://sourceforge.net/projects/ffmpeg-php/files/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2/download
tar -xjf ffmpeg-php-0.6.0.tbz2
cd ffmpeg-php-0.6.0/
mv ffmpeg_frame.loT ffmpeg_frame.lo
make install

yum -y install freetype-devel SDL-devel freeglut-devel
wget -c http://mirror.ffmpeginstaller.com/source/gpac/gpac-full-0.4.5.tar.gz
tar -xzf gpac-full-0.4.5.tar.gz
./configure –prefix=/usr/local/cpffmpeg/ –extra-cflags=-I/usr/local/cpffmpeg/include/ –extra-ldflags=-L/usr/local/cpffmpeg/lib –disable-wx –strip
make install
ln -s /usr/local/cpffmpeg/bin/MP4Box /usr/local/bin/MP4Box
ln -s /usr/local/cpffmpeg/bin/MP4Box /usr/bin/MP4Box
cp bin/gcc/libgpac.so /usr/lib

//pureftp (maybe you have a ftp and don’t need this)
yum -y install pure-ftpd
cd /etc/pure-ftpd
nano pure-ftpd.conf
/etc/init.d/pure-ftpd start
chkconfig pure-ftpd on

//sendmail (maybe you have  mail and don’t need this)
chkconfig –levels 235 sendmail on

I understand if you have questions about this install readme, just ask on the forum :)  
When you are done with this install you have a fully working server with a lot of tools needed for JAVS1.3.1 and it even streams flv and mp4. Check www.xendesktop.nl for a good example of a video script site theat runs on a Cent OS server with stream support.


Lighttpd rewrite rules setup for JAVS

Well, because lighttpd has the easy ability to stream video’s and has less server load I wrote the rewrite rulez for JAVS1.3.0 for it.

JAVS1.3.0 can be bought on: http://justanothervideoscript.com/products only 50 dollars.


open lighttpd.conf and add:

$HTTP["host"] =~ “Yourdomainname.ltd” {
    include “rewrite.conf”

Replace the domain settings with yours.
Now make a file rewrite.conf and add:

$HTTP["host"] =~ “Yourdomainname.ltd” {
server.document-root = “/var/www/html/xendesktop”
url.rewrite-once = (

“^/play/([^.?]*)” => “/index.php?id=8&vrw=$1″,
“^/play/([^.?]*)/___([^.?]*)” => “/index.php?id=8&vrw=$1&tab=$2″,

“^/members/_([^.?]*)/__([^.?]*)” => “/index.php?id=88&filter=$1&nsearch=$2″,
“^/members/_([^.?]*)/__([^.?]*)/([0-9_-]+)” => “/index.php?id=88&filter=$1&nsearch=$2&page=$3″,
“^/members/_([^.?]*)/___([^.?]*)” => “/index.php?id=88&filter=$1&lsearch=$2″,
“^/members/_([^.?]*)/___([^.?]*)/([0-9_-]+)” => “/index.php?id=88&filter=$1&lsearch=$2&page=$3″,
“^/members/_([^.?]*)/__([^.?]*)/___([^.?]*)” => “/index.php?id=88&filter=$1&nsearch=$2&lsearch=$3″,
“^/members/_([^.?]*)/__([^.?]*)/___([^.?]*)/([0-9_-]+)” => “/index.php?id=88&filter=$1&nsearch=$2&lsearch=$3&page=$4″,
“^/members/_([^.?]*)” => “/index.php?id=88&filter=$1″,
“^/members/_([^.?]*)/([0-9_-]+)” => “/index.php?id=88&filter=$1&page=$2″,
“^/members$” => “/index.php?id=88″,
“^/members/([0-9_-]+)” => “/index.php?id=19&page=$1″,

“^/search$” => “/index.php?id=22″,
“^/search/([0-9_-]+)” => “/index.php?id=22&page=$1″,
“^/search/([^.?]*)” => “/index.php?id=22&keywords=$1″,
“^/search/([^.?]*)/([0-9_-]+)” => “/index.php?id=22&keywords=$1&page=$2″,

“^/account$” => “/index.php?id=56″,
“^/account/([a-z_-]+)” => “/index.php?id=56&page=$1″,
“^/account/([a-zA-Z0-9_-]+)/([0-9_-]+)” => “/index.php?id=56&page=$1&subpage=$2″,

“^/all_videos$” => “/index.php?id=7″,
“^/all_videos/([0-9_-]+)” => “/index.php?id=7&page=$1″,

“^/top_rated$” => “/index.php?id=2″,
“^/top_rated/([0-9_-]+)” => “/index.php?id=2&page=$1″,

“^/most_viewed/([^.?]*)” => “/index.php?id=3&filter=$1″,
“^/most_viewed/([^.?]*)/([0-9_-]+)” => “/index.php?id=3&filter=$1&page=$2″,
“^/most_viewed$” => “/index.php?id=3″,
“^/most_viewed/([0-9_-]+)” => “/index.php?id=3&page=$1″,

“^/rss$” => “/index.php?id=29″,
“^/rss/([^.?]*)” => “/index.php?id=29&feed=$1″,

“^/forgot$” => “/index.php?id=4″,
“^/upload$” => “/index.php?id=5″,
“^/embed$” => “/index.php?id=9″,
“^/register$” => “/index.php?id=6″,
“^/logout$” => “/index.php?logout=1″,
“^/terms$” => “/index.php?id=16″,
“^/dmca$” => “/index.php?id=33″,
“^/2257$” => “/index.php?id=34″,
“^/contact$” => “/index.php?id=17″,
“^/history$” => “/index.php?id=50″,
“^/history/([0-9_-]+)” => “/index.php?id=50&page=$1″,

“^/favorites$” => “/index.php?id=51&page=1″,
“^/favorites/([0-9_-]+)” => “/index.php?id=51&page=$1″,

“^/profile/([a-zA-Z0-9_-]+)/([a-z_-]+)/([^.?]*)/([0-9_-]+)” => “/index.php?id=18&user=$1&act=$2&opt=$3&page=$4″,
“^/profile/([a-zA-Z0-9_-]+)/([a-z_-]+)/([^.?]*)” => “/index.php?id=18&user=$1&act=$2&opt=$3″,
“^/profile/([a-zA-Z0-9_-]+)/([a-z_-]+)/([0-9_-]+)” => “/index.php?id=18&user=$1&act=$2&page=$3″,
“^/profile/([a-zA-Z0-9_-]+)/([a-z_-]+)” => “/index.php?id=18&user=$1&act=$2″,
“^/profile/([a-zA-Z0-9_-]+)/([0-9_-]+)” => “/index.php?id=18&user=$1&page=$2″,
“^/profile/([a-zA-Z0-9_-]+)” => “/index.php?id=18&user=$1″,

“^/category/([^.?]*)/_([^.?]*)/__([^.?]*)/___([^.?]*)/([0-9_-]+)” => “/index.php?id=21&crw=$1&scrw=$2&sscrw=$3&filter=$4&page=$5″,
“^/category/([^.?]*)/_([^.?]*)/__([^.?]*)/([0-9_-]+)” => “/index.php?id=21&crw=$1&scrw=$2&sscrw=$3&page=$4″,
“^/category/([^.?]*)/_([^.?]*)/__([^.?]*)/___([^.?]*)” => “/index.php?id=21&crw=$1&scrw=$2&sscrw=$3&filter=$4″,
“^/category/([^.?]*)/_([^.?]*)/__([^.?]*)” => “/index.php?id=21&crw=$1&scrw=$2&sscrw=$3″,

“^/category/([^.?]*)/_([^.?]*)/___([^.?]*)/([0-9_-]+)” => “/index.php?id=21&crw=$1&scrw=$2&filter=$3&page=$4″,
“^/category/([^.?]*)/_([^.?]*)/([0-9_-]+)” => “/index.php?id=21&crw=$1&scrw=$2&page=$3″,
“^/category/([^.?]*)/_([^.?]*)/___([^.?]*)” => “/index.php?id=21&crw=$1&scrw=$2&filter=$3″,
“^/category/([^.?]*)/_([^.?]*)” => “/index.php?id=21&crw=$1&scrw=$2″,

“^/category/([^.?]*)/___([^.?]*)/([0-9_-]+)” => “/index.php?id=21&crw=$1&filter=$2&page=$3″,
“^/category/([^.?]*)/([0-9_-]+)” => “/index.php?id=21&crw=$1&page=$2″,
“^/category/([^.?]*)/___([^.?]*)” => “/index.php?id=21&crw=$1&filter=$2″,
“^/category/([^.?]*)” => “/index.php?id=21&crw=$1″

Ofcourse replace the domain settings again.

The good thing about this code is you can see how you work with a lot of rewrite on lighttpd. If you have questions, use the comments.


Javs 1.3.0 Released today


Hi all,
I cleaned up the forum today because the new JAVS 1.3.0 is released and it’s totaly different then it use to be.
You can buy it now for only 50dollar/1domain.
There are some good new things like the Admin backend, templates, player options and google style jquery images
There also some free beta’s like HD videos and Mobile site. We call these beta’s because they haven’t been tested for the big public.

You can find the new demo’s on http://justanothervideoscript.com/demo

Hope to see you all have a nicer video site soon.


JAVS is free

From now on JAVS is free software and has no limitations.
The idea is this:
The core script will be free and bug fixes will be done by me and support members.
New templates or plugins will be sold for a small amount on the product page.

The core will make people happy, the products will keep the site alive :)


No more vidiscript

Report: Vidiscript officially dead 7:00 PM EST September 27, 2010

Which means i will give my version of the script away for free, you can use the download tab in the menu. I hope most people that loved this free script will come and support JAVS.

This way we can finaly start to build a good free script, and say no to marketing losers.

Download it now


Synonyms for SEO purpose

Well hi all, I made a tools that transfers video title after you downloaded a video from another website.
If you use a mass grabber to grab a video from a porn web-site but you don’t change the title the video will never be on top on a google search.

Now in the tool you can load the Synonyms of your choice, example: big, huge, massive, giant

When you have a title like, example: She has a big ass and huge feet.
When you add this title in the tool it will find big and huge and replace with by one  of the keywords in the example.
Example of the title can be:  She has a huge ass and giant feet

Now google will fetch your site and think it’s a new video and will place it higher in the list, In my version of the tool I replace ass with butt, behind, fanny.


//database reading
$title = “this ass girl with pov sperm in her cunt out pussy” ;

//make string not case sensitive
$title = strtolower($title) ;

//echo the old title
echo “Oude title: $title <br>” ;

//Make an array with all words in it
$beginarray = explode(” “, $title) ;
//count how many words there are in title
$numarray = count($beginarray) -1 ;

//make a var
$newtitle = ” ;

//A loop that will replace everything as long as there are words to replace
for ($a = 0; $a <= $numarray; $a++) {
//search if old word gets a new one
$workarray = changeword($beginarray[$a]) ;
//add new word to new title
$newtitle .= $workarray.” ” ;

//Make the first letter a capitol
$newtitle =  ucfirst($newtitle) ;

//echo the new title or write to database
echo “newtitle: $newtitle” ;

function changeword($workarray) {
//if the word sent to this function is big
     case big:
//words in an array that can replace the word big
           $w = array(‘huge’,'massive’,'giant’) ;
//random take a word from the array
           $r = rand(0, count($w) -1) ;
//set the new word to a string and return it to the loop
           $workarray = $w[$r] ;
     case huge:
         $w = array(‘big’,'massive’,'giant’) ;
         $r = rand(0, count($w) -1) ;
         $workarray = $w[$r] ;
     case massive:
         $w = array(‘big’,'huge’,'giant’) ;
         $r = rand(0, count($w) -1) ;
         $workarray = $w[$r] ;
     case giant:
         $w = array(‘big’,'huge’,'massive’) ;
         $r = rand(0, count($w) -1) ;
         $workarray = $w[$r] ;
//if no match then return the word
          $workarray = $workarray ;
    return $workarray ;


This code is made by me and can be used for non-commercial purpose. If you like this by my script.


Mass hotlinker to keezmovies

Well after a day doing some CURL research and some testing I came up with a mass hotlinker for keezmovies.
I first started with pornhub but I found out last week they upgraded there protection against hotlinking.

I made a Curl function that returns a web-site in a string, then used php function preg_match_all to get the indivdual links to the video’s.
These video links go in a loop and with functions I made(will be class later) I get the title/catergorie/tags/pornstar/flvpath. The thumb is grabbed to the web-site server by wget.

Usual coders/site owners then grab the flv and add it to there databases, but I’m going to hotlink the video. You now probaly think “but the flv link is only valide for 15 minutes”
This is true and that’s why I save the Video Url and not the FLV url. So now when a user opens a video on my website it grabs the FLV url and start playing it.

This trick can be used for all sites where you can easily find the FLV url in there soruce code, sites like youtube and redtube have a lil harder way to get the flv’s.

Programs used: Firefox/ie,  Fiddler, wget, Curl, Php
Example: statube.com

Functions will be blogged later, good night.


New life to JAVS

Since i’m making so much small addons to this script each day I decided to maintain a blog about it.
Last night I found myself thinking how to go on with hole vidiscript rip off and I came up with the following.

  • This script I have now can be used for free and I hope for donations.
  • All extra’s like massimport, ajax-chat, Other site grabber are going to cost 5 dollars each.
  • The backend I’m working on is going to be an upgrade for the next version.
  • All code that isn’t used anymore is removed.

With these steps I want to eventually have a backend, multiple catergorie, language option and the most important thing A “COMMUNITY”.
If you support this way of thinking and want to contribute, just make a forum account and tell me your ideas and what you can do for JAVS.