K7

K7Blog

须知少年凌云志 曾许人间第一流.
proton
telegram

沒錢還想玩高配伺服器,Linodes的100美金真的超爽!

我也是最近才發現的 Linodes 白嫖 100 美金,目前也是使用了一個星期,寫個文章記錄一下,順便你們也可以參考入坑!

注:本文無任何廣告,本站也不會打任何廣告!附上一個開機並正常使用 7 天的截圖。

Snipaste_2023-04-05_07-14-25

我開的這個伺服器是 AMD EPYC 7642 獨享 6 核心 16G 的日本機房,目前跑一些腳本處理一些東西。
目前穩了 7 天,不知道能穩多久也不知道能不能把 100 美金完全花完,到時候掛了我就在這一段的下面更新具體情況!

首先一開始我買了一個帳號,然後我是直接帳號密碼登錄,當時準備通過 API 做一個白嫖的網站,可以開免費的機器給大家折騰,然後到 72 小時自動銷毀,估計是我手工登錄的原因帳號被封號了,但是我登錄提示是帳號密碼不正確還是什麼,我又感覺是商家把密碼修改了。

於是我換了一家購買,基本上價格好像是 45-55RMB 的樣子,然後我發現像亞馬遜 Linodes Vultr 等這些可以白嫖的服務商,都可以通過 API 開通機器,並且目前出來專門開通機器的網站。

五合一面板開機管理:https://cloud.bobu.me/ (非廣告,這個是我在第二家購買帳號的商品說明看見的,說通過 API 比較穩一點。)

在第二家購買 Linodes 之前,我購買了一個亞馬遜的 32v 白嫖帳號,我第一次使用這個,就比較搞不懂我就乾脆手工登錄了帳號,第二天帳號就封了。

總結:#

目前我花 50 左右購買的 Linodes 帳號穩了一个星期左右,至少我 50 塊錢賺回來了,通過 API 開通這個 API 面板是需要付費的。

如果不想付費 API 面板,聯繫 chatgpt 直接告訴它要寫一個 Linodes 的 API 開通實例的 PHP 文件就好了。
盡量不要手工登錄帳號,當然一個靠譜的帳號販子也是必要的,我第一次購買的那個我總感覺是商家把帳號密碼修改了。

另外 Linodes 的 100 美金額度有時間期限,好像是三個月還是兩個月,不要捨不得花直接高配機器開起來。
這個的話使用場景基本是跑一些不重要的腳本,富強和建站都不合適,畢竟不知道時候就掛了。
拿來折騰做測試比較不錯的,我目前也是跑了一些東西 CPU 使用百分之六十左右。

折騰玩法#

如果你在此之前通過 API 開通機器,Linodes 帳號都比較穩,或者說你有精力去折騰不怕伺服器異常導致流量掉或者 seo 排名問題,再或者你的場景是固定數據的 cms 程序,想花少一點的錢去分攤伺服器算力可以嘗試我下面的方法。

首先你有一台備用伺服器,做活動打折扣的商家有很多可以購買做備用伺服器。

然後安裝寶塔的開心版,白嫖才是最快樂的,詳細可看我寫的三款寶塔開心版 白嫖寶塔企業版 已剝離通訊

在參考我之前寫的一個 PHP 文件 + cloudflare 實現故障轉移! 根據教程配置好一些信息,添加一個監控就能使用了,請部署在備用伺服器上。

裡面代碼的下載鏈接也因為我換了程序失效了,我會在最下面貼上完整代碼。
在寶塔插件裡面可以安裝 FTP 儲存 + 文件同步,把這些對接到你的備用伺服器上。

或者你是一個影視網站,沒有用戶數據只有影視數據,那麼你肯定有發布頁,可以在發布頁添加一個部署在 Linodes 的域名,然後在源伺服器上設置文件同步到 Linodes 伺服器上。這個樣子就達到分攤算力的玩法!

其實只要思想不滑坡,辦法總比困難多,總有一個方法能讓你合理應用!

故障轉移代碼:#

<?php
header('Content-type:application/json');

//創建API後得到的token,寫在Bearer 後
$Authorization = 'Authorization: Bearer ';
//ping 檢測的IP
$pingip='';
//區域ID
$id = '';
//需要修改的DNS記錄ID,  $get_dnsid = true 獲取記錄列表,設置dnsid後將$get_dnsid設置成false
$dnsid = '';
//記錄
$dnstype = 'A';
//名字
$dnsname = '';
//修改後的IP
$dnscontent = '';
//代理
(bool)$dnsproxied = false;
//ttl
$dnsttl = 1;


//獲取DNS記錄ID列表,改成true後訪問PHP地址會顯示JSON格式的DNS記錄列表。
$get_dnsid = false;

if ($get_dnsid === true) {
    //獲取DNS ID
    $api_dnsid = 'https://api.cloudflare.com/client/v4/zones/' . $id . '/dns_records';
    try {
        $json = curl_get($api_dnsid, [$Authorization]);
        $json = json_decode($json);
        echo json_encode($json, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_FORCE_OBJECT);
    } catch (Exception $aaa) {
        $json = [
            'state' => 1,
            'msg' => 'API獲取DNSID 錯誤'
        ];
        echo json_encode($json, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_FORCE_OBJECT);
    }
    exit();
} else {
    if (pingDomain($pingip, 443) === -1) {
        changeDNS($dnstype, $dnsname, $dnscontent, $dnsproxied, $dnsttl, $id, $dnsid, $Authorization);
    }
}

//ping
function pingDomain($domain, $port)
{
    try {
        $starttime = microtime(true);
        $file      = fsockopen($domain, $port, $errno, $errstr, 10);
        $stoptime  = microtime(true);
        $status    = 0;

        if (!$file) $status = -1;  // Site is down
        else {
            fclose($file);
            $status = ($stoptime - $starttime) * 1000;
            $status = floor($status);
        }
        return $status;
    } catch (\Exception $a) {
        return false;
    }
}

//修改DNS
function changeDNS($dnstype, $dnsname, $dnscontent, $dnsproxied, $dnsttl, $id, $dnsid, $Authorization)
{

    if ($dnsid != '') {
        $api = 'https://api.cloudflare.com/client/v4/zones/' . $id . '/dns_records/' . $dnsid;

        $json = [
            'type' => $dnstype,
            'name' => $dnsname,
            'content' => $dnscontent,
            'proxied' => $dnsproxied,
            'ttl' => $dnsttl,
        ];
        $json = json_encode($json, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);
        $temp = curl_patch($api, [$Authorization], $json);
        $temp = json_decode($temp);
        echo json_encode($temp, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_FORCE_OBJECT);
    } else {
        $json = [
            'state' => 1,
            'msg' => 'DNS ID 為空,需要先設置DNS ID'
        ];
        echo json_encode($json, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_FORCE_OBJECT);
    }
}


//--------------------------------------------------CURL
function curl_get($url, $header)
{

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    //curl_setopt($ch, CURLOPT_ENCODING,'gzip');

    $contents = curl_exec($ch);
    curl_close($ch);
    //$contents = mb_convert_encoding($contents, 'utf-8','GB2312');
    return $contents;
}
function curl_patch($url, $header, $data)
{

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PATCH');
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    //curl_setopt($ch, CURLOPT_ENCODING,'gzip');

    $contents = curl_exec($ch);
    curl_close($ch);
    //$contents = mb_convert_encoding($contents, 'utf-8','GB2312');
    return $contents;
}
載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。