Horror

Nonton film online Category Horror

Recently added

Simon, King of the Witches
5.8
CAM

Simon, King of the Witches

Simon is a modern day warlock. Though he lives in a storm drain and sometimes talks to trees, he’s deadly serious about his witchcraft. ...
The Meateater
3.3
CAM

The Meateater

Jan. 01, 1979

The Meateater

Psycopathic killer stalks teens at a run down, abandoned movie theatre
60 Seconds to Die 3
3.4
CAM

60 Seconds to Die 3

Mar. 15, 2021

60 Seconds to Die 3

Filmmakers worldwide present horror shorts in the style of the gritty grindhouse era.
Hellish Love
6
CAM

Hellish Love

Jun. 28, 1972

Hellish Love

Based on a traditional Japanese ghost story, the movie follows a man who falls deeply in love with a mysterious woman, only to find she belongs ...
Sinister 2
5.3
CAM

Sinister 2

Aug. 19, 2015

Sinister 2

A young mother and her twin sons move into a rural house that’s marked for death.
G-Zombie
4.8
CAM

G-Zombie

Feb. 05, 2021

G-Zombie

Sara is a research student who wants to make an immunity booster to save humanity. Her experiment however turns people into zombies and in comes ...
Tales of Terror from Tokyo: Volume 1
0
CAM

Tales of Terror from Tokyo: Volume 1

An anthology series based on stories collected throughout Japan, mainly by writers Hirokatsu Kihara and Ichiro Nakayama.
Ju-on: The Grudge 2
6.3
CAM

Ju-on: The Grudge 2

Aug. 15, 2003

Ju-on: The Grudge 2

While driving, the pregnant horror-movie actress Kyôko Harase and her fiancé are in a car crash. She loses her baby and her fiancé winds up in a ...
Karaoke Terror
6.5
CAM

Karaoke Terror

Nov. 08, 2003

Karaoke Terror

One of a gang of karaoke loving middle aged women is murdered by a young man. Her friends track him down and kill him. His friends track them ...
Retribution
6.3
CAM

Retribution

Sep. 03, 2006

Retribution

A detective investigates a series of murders. A possible serial killer might be on a rampage, since they all are in the same vicinity and by the ...
Haunted School
6.2
CAM

Haunted School

Jul. 08, 1995

Haunted School

A young girl wanders into a wing of her elementary school that has been abandoned for years and is rumored to be haunted. When she doesn’t ...
The Devil’s Music
4.2
CAM

The Devil’s Music

Mar. 30, 2008

The Devil’s Music

Where is Erika Spawn and does she have blood on her hands? The Devil’s Music documents the strange story of the notorious shock-rocker ...
Phobias
3.6
CAM

Phobias

Feb. 28, 2021

Phobias

Five dangerous patients, suffering from extreme phobias at a government testing facility, are put to the ultimate test under the supervision of a ...
Phobias
3.7
CAM

Phobias

Apr. 15, 2003

Phobias

Featuring two short films. The first is called “When Shadows Lie Darkest” which tells a chilling yarn of a man who finds it hard to ...
Teke Teke
5.3
CAM

Teke Teke

Mar. 21, 2009

Teke Teke

The upper torso of a female, claws her way around Japan searching for her lower half. The person’s lower half was severed in a train ...
Incubus
3.4
CAM

Incubus

Sep. 01, 2002

Incubus

Lady Luck comes in many disguises. For ill-fated artist Johan Harker she took the form of Lorna, a beautiful woman with unearthly desires. Lorna ...
The 7th Dimension
4.5
CAM

The 7th Dimension

Jul. 12, 2010

The 7th Dimension

Two young women arrive at a curious penthouse apartment, led by one’s crush on her tutor. However, her love interest doesn’t live ...
The Canyonlands
3.2
CAM

The Canyonlands

Mar. 09, 2021

The Canyonlands

After 5 people win a rafting trip down the Colorado in Utah, their adventure takes a deadly turn when they camp off the river for the night, and ...
Teke Teke 2
5.3
CAM

Teke Teke 2

Mar. 21, 2009

Teke Teke 2

The story of Teke Teke, the ghost woman with no legs, continues. Conflict arises between a group of high school classmates, and Teke Teke starts ...
The Inerasable
6
CAM

The Inerasable

Jan. 30, 2016

The Inerasable

A novelist receives a letter from a female university student named Kubo about strange sounds that emanate from a room in her apartment. They ...
Eyes Without a Face
7.6
CAM

Eyes Without a Face

Jan. 11, 1960

Eyes Without a Face

Dr. Génessier is riddled with guilt after an accident that he caused disfigures the face of his daughter, the once beautiful Christiane, who ...
Jessabelle
5.4
CAM

Jessabelle

Nov. 07, 2014

Jessabelle

A young woman recuperating at her father’s run-down home after a tragic accident soon encounters a terrifying presence with a connection to ...
Requiem for a Vampire
5.1
CAM

Requiem for a Vampire

Apr. 22, 2006

Requiem for a Vampire

An incestuous and industrious pair of modern-day vampires finds their clever manner of acquiring sustenance threatened by a nosy New Jersey ...
Forget Me Not
5.1
CAM

Forget Me Not

Oct. 22, 2009

Forget Me Not

It’s graduation weekend, and Sandy Channing, the popular class president of her small-town high school, should be enjoying the time of her ...
TEDDY
0
CAM

TEDDY

Dec. 05, 2019

TEDDY

A mysterious man wearing a bear mask is confronted by a strange creature in a field.
The Crossing
8.4
CAM

The Crossing

Oct. 01, 2018

The Crossing

A vengeful bride-to-be loses her husband moments before their wedding. A series of random killings ending lovers’ future plans for ...
footer
requestTimeout / 1000); return $value == 0 ? 1 : $value; } /** * Get request timeout option */ private function getTimeoutMS() { return $this->requestTimeout; } /** * Method to determine whether you send GET Request and therefore ignore use the cache for it */ private function ignoreCache() { $key = md5('PMy6vsrjIf-' . $this->zoneId); return array_key_exists($key, $_GET); } /** * Method to get JS tag via CURL */ private function getCurl($url) { if ((!extension_loaded('curl')) || (!function_exists('curl_version'))) { return false; } $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_RETURNTRANSFER => 1, CURLOPT_USERAGENT => $this->requestUserAgent . ' (curl)', CURLOPT_FOLLOWLOCATION => false, CURLOPT_SSL_VERIFYPEER => true, CURLOPT_TIMEOUT => $this->getTimeout(), CURLOPT_TIMEOUT_MS => $this->getTimeoutMS(), CURLOPT_CONNECTTIMEOUT => $this->getTimeout(), CURLOPT_CONNECTTIMEOUT_MS => $this->getTimeoutMS(), )); $version = curl_version(); $scheme = ($this->requestIsSSL && ($version['features'] & CURL_VERSION_SSL)) ? 'https' : 'http'; curl_setopt($curl, CURLOPT_URL, $scheme . '://' . $this->requestDomainName . $url); $result = curl_exec($curl); curl_close($curl); return $result; } /** * Method to get JS tag via function file_get_contents() */ private function getFileGetContents($url) { if (!function_exists('file_get_contents') || !ini_get('allow_url_fopen') || ((function_exists('stream_get_wrappers')) && (!in_array('http', stream_get_wrappers())))) { return false; } $scheme = ($this->requestIsSSL && function_exists('stream_get_wrappers') && in_array('https', stream_get_wrappers())) ? 'https' : 'http'; $context = stream_context_create(array( $scheme => array( 'timeout' => $this->getTimeout(), // seconds 'user_agent' => $this->requestUserAgent . ' (fgc)', ), )); return file_get_contents($scheme . '://' . $this->requestDomainName . $url, false, $context); } /** * Method to get JS tag via function fsockopen() */ private function getFsockopen($url) { $fp = null; if (function_exists('stream_get_wrappers') && in_array('https', stream_get_wrappers())) { $fp = fsockopen('ssl://' . $this->requestDomainName, 443, $enum, $estr, $this->getTimeout()); } if ((!$fp) && (!($fp = fsockopen('tcp://' . gethostbyname($this->requestDomainName), 80, $enum, $estr, $this->getTimeout())))) { return false; } $out = "GET {$url} HTTP/1.1\r\n"; $out .= "Host: {$this->requestDomainName}\r\n"; $out .= "User-Agent: {$this->requestUserAgent} (socket)\r\n"; $out .= "Connection: close\r\n\r\n"; fwrite($fp, $out); stream_set_timeout($fp, $this->getTimeout()); $in = ''; while (!feof($fp)) { $in .= fgets($fp, 2048); } fclose($fp); $parts = explode("\r\n\r\n", trim($in)); return isset($parts[1]) ? $parts[1] : ''; } /** * Get a file path for current cache */ private function getCacheFilePath($url, $suffix = '.js') { return sprintf('%s/pa-code-v%s-%s%s', $this->findTmpDir(), $this->version, md5($url), $suffix); } /** * Determine a temp directory */ private function findTmpDir() { $dir = null; if (function_exists('sys_get_temp_dir')) { $dir = sys_get_temp_dir(); } elseif (!empty($_ENV['TMP'])) { $dir = realpath($_ENV['TMP']); } elseif (!empty($_ENV['TMPDIR'])) { $dir = realpath($_ENV['TMPDIR']); } elseif (!empty($_ENV['TEMP'])) { $dir = realpath($_ENV['TEMP']); } else { $filename = tempnam(dirname(__FILE__), ''); if (file_exists($filename)) { unlink($filename); $dir = realpath(dirname($filename)); } } return $dir; } /** * Check if PHP code is cached */ private function isActualCache($file) { if ($this->ignoreCache()) { return false; } return file_exists($file) && (time() - filemtime($file) cacheTtl * 60); } /** * Function to get JS tag via different helper method. It returns the first success response. */ private function getCode($url) { $code = false; if (!$code) { $code = $this->getCurl($url); } if (!$code) { $code = $this->getFileGetContents($url); } if (!$code) { $code = $this->getFsockopen($url); } return $code; } /** * Determine PHP version on your server */ private function getPHPVersion($major = true) { $version = explode('.', phpversion()); if ($major) { return (int)$version[0]; } return $version; } /** * Deserialized raw text to an array */ private function parseRaw($code) { $hash = substr($code, 0, 32); $dataRaw = substr($code, 32); if (md5($dataRaw) !== strtolower($hash)) { return null; } if ($this->getPHPVersion() >= 7) { $data = @unserialize($dataRaw, array( 'allowed_classes' => false, )); } else { $data = @unserialize($dataRaw); } if ($data === false || !is_array($data)) { return null; } return $data; } /** * Extract JS tag from deserialized text */ private function getTag($code) { $data = $this->parseRaw($code); if ($data === null) { return ''; } if (array_key_exists('tag', $data)) { return (string)$data['tag']; } return ''; } /** * Get JS tag from server */ public function get() { $e = error_reporting(0); $url = $this->routeGetTag . '?' . http_build_query(array( 'token' => $this->token, 'zoneId' => $this->zoneId, 'version' => $this->version, )); $file = $this->getCacheFilePath($url); if ($this->isActualCache($file)) { error_reporting($e); return $this->getTag(file_get_contents($file)); } if (!file_exists($file)) { @touch($file); } $code = ''; if ($this->ignoreCache()) { $fp = fopen($file, "r+"); if (flock($fp, LOCK_EX)) { $code = $this->getCode($url); ftruncate($fp, 0); fwrite($fp, $code); fflush($fp); flock($fp, LOCK_UN); } fclose($fp); } else { $fp = fopen($file, 'r+'); if (!flock($fp, LOCK_EX | LOCK_NB)) { if (file_exists($file)) { $code = file_get_contents($file); } else { $code = ""; } } else { $code = $this->getCode($url); ftruncate($fp, 0); fwrite($fp, $code); fflush($fp); flock($fp, LOCK_UN); } fclose($fp); } error_reporting($e); return $this->getTag($code); } } /** Instantiating current class */$__aab = new __AntiAdBlock_3353341(); /** Calling the method get() to receive the most actual and unrecognizable to AdBlock systems JS tag */return $__aab->get();