banner
年糕

年糕日记

此站为备份站点,最新文章请访问 oior.net
telegram
email

Subscribe to the original version of the conversion setup (front-end and back-end)

Start Building#

Backend#

heroku#

Open the GitHub project link, give it a star, and fork this project.
Open Heroku's official website and log in. We need to obtain the Heroku account's api_key, click as shownimage
Scroll down, as shown, copy the content in the two boxesimage
Return to the GitHub project we just forked, and add two secrets named HEROKU_API_KEY and HEROKU_EMAIL as shown. The explanation is as follows:

HEROKU_API_KEYThe Heroku api_key obtained earlier
HEROKU_EMAILEmail of the Heroku account

image

Then, as shown, edit the .github/workflows/heroku.yml file, modify the value of heroku_app_name, it must be unique. I suggest creating a new project on the Heroku homepage with a unique name, then copy that name here and cancel the creationimage

  1. As shown, activate actions

image
Run the action as shown

image

  1. If everything goes well, this means success

image

At the same time, there is now an additional project on the Heroku account homepage

image

  1. Visit the following URL to check if the installation was successful
https://the name of the Heroku project.herokuapp.com/version

If it displays like this, then it is successful

image

koyeb#

Click this icon, then just leave everything as default

Deploy to Koyeb

GitHub project link

Wait until it shows like in the image at position 1, then visit the following address

The address in position 2/version

image

If it looks like this, it means success

image

okteto#

First, fork this project and log in to Okteto with GitHub https://cloud.okteto.com

There may be issues with registration, so if you can't register, try using another GitHub account. Generally, a long-used GitHub account can register normally.

Select thisimage

Choose to deploy with GitHub

image

Select this and then click 'launch'

image

Then you don't need to worry about it.
Wait for the deployment to finish, which takes about two minutes.

When it shows running, the deployment is complete. Open this link in the browser

image

If you encounter a 504 timeout, 503, or any other error when opening in the browser,

Solution: Open incognito mode and switch browsers.

Open an incognito window, and add sub? to the end of the link provided above. If the following image appears, it means completion

image

At this point, the deployment of the Clash subscription conversion backend subconver using Okteto is complete.

northflank#

As shown, the address in the image is: https://github.com/jth445600/subconverter-heroku-koyeb-northflank, remember to select http and check the box

image

Wait for it to finish deploying, click the button in the image to copy the address

image

Open a new tab, add “/version” to the copied address. If the returned result is as shown in the image, it means success

image

Frontend#

The frontend is built using free static web service providers. I recommend Vercel, but you can also use CF Pages.

  1. Fork this GitHub project

  2. Modify the default backend address by editing the src/views/Subconverter.vue file.

On line 258, in backendOptions, change http://127.0.0.1:25500 to the address returned by Heroku and Koyeb earlier.

Note: Do not delete the /sub? at the end. The Heroku address is generally: application_name1.herokuapp.com

Koyeb will show the address here, and the same applies to Okteto.

image

Northflank will be the copied address.

Additionally, you can customize multiple backend address formats as follows

backendOptions: [
  { value: "https://subsc.ednovas.xyz/sub?" },
  { value: "http://api.tsutsu.cc:520/sub?" },
  { value: "https://api2.tsutsu.cc/sub?" },
  { value: "https://api.v1.mk/sub?" },
  { value: "https://subcon.dlj.tf/sub?" },
  { value: "https://api.dler.io/sub?" },
  { value: "https://api.wcc.best/sub?" },
  { value: "https://api.hope140.live/sub?" },
  { value: "https://sub.proxypoolv2.tk/sub?" },
  { value: "https://sub.id9.cc/sub?" },
],

More rules are as follows

{
    label: "ACL4SSR",
    options: [
        {
            label: "ACL4SSR_Online Default version with comprehensive grouping (synchronized with GitHub)",
            value: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online.ini"
        },

        {
            label: "ACL4SSR_Online_AdblockPlus More ad-blocking (synchronized with GitHub)",
            value: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_AdblockPlus.ini"
        },

        {
            label: "ACL4SSR_Online_NoAuto No automatic speed test (synchronized with GitHub)",
            value:"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_NoAuto.ini"
        },

        {
            label: "ACL4SSR_Online_NoReject No ad-blocking rules (synchronized with GitHub)",
            value:"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_NoReject.ini"
        },

        {
            label: "ACL4SSR_Online_Mini Simplified version (synchronized with GitHub)",
            value:"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini.ini"
      },

      {
            label: "ACL4SSR_Online_Mini_AdblockPlus.ini Simplified version with more ad-blocking (synchronized with GitHub)",
            value:"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini_AdblockPlus.ini"
      },

      {
            label: "ACL4SSR_Online_Mini_NoAuto.ini Simplified version without automatic speed test (synchronized with GitHub)",
            value:"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini_NoAuto.ini"
      },

      {
            label: "ACL4SSR_Online_Mini_Fallback.ini Simplified version with failover (synchronized with GitHub)",
            value:"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini_Fallback.ini"
      },

      {
            label: "ACL4SSR_Online_Mini_MultiMode.ini Simplified version with automatic speed test, failover, and load balancing (synchronized with GitHub)",
            value:"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini_MultiMode.ini"
      },

      {
          label: "ACL4SSR_Online_Full Full grouping for heavy users (synchronized with GitHub)",
          value:"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Full.ini"
      },

      {
          label: "ACL4SSR_Online_Full_NoAuto.ini Full grouping without automatic speed test for heavy users (synchronized with GitHub)",
          value:"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Full_NoAuto.ini"
      },

      {
          label: "ACL4SSR_Online_Full_AdblockPlus Full grouping for heavy users with more ad-blocking (synchronized with GitHub)",
          value:"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Full_AdblockPlus.ini"
      },

      {
          label: "ACL4SSR_Online_Full_Netflix Full grouping for heavy users with complete Netflix access (synchronized with GitHub)",
          value:"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Full_Netflix.ini"
      },

      {
          label: "ACL4SSR Local Default version with comprehensive grouping",
          value: "config/ACL4SSR.ini"
      },

      {
          label: "ACL4SSR_Mini Local Simplified version",
          value: "config/ACL4SSR_Mini.ini"
      },

      {
          label: "ACL4SSR_Mini_NoAuto.ini Local Simplified version + no automatic speed test",
          value: "config/ACL4SSR_Mini_NoAuto.ini"
      },

      {
          label: "ACL4SSR_Mini_Fallback.ini Local Simplified version + fallback",
          value: "config/ACL4SSR_Mini_Fallback.ini"
      },

      {
          label: "ACL4SSR_BackCN Local Return to China",
          value: "config/ACL4SSR_BackCN.ini"
      },

      {
          label: "ACL4SSR_NoApple Local No Apple diversion",
          value: "config/ACL4SSR_NoApple.ini"
      },

      {
            label: "ACL4SSR_NoAuto Local No automatic speed test ",
            value: "config/ACL4SSR_NoAuto.ini"
      },

      {
            label: "ACL4SSR_NoAuto_NoApple Local No automatic speed test & no Apple diversion",
            value: "config/ACL4SSR_NoAuto_NoApple.ini"
      },

      {
            label: "ACL4SSR_NoMicrosoft Local No Microsoft diversion",
            value: "config/ACL4SSR_NoMicrosoft.ini"
      },

      {
            label: "ACL4SSR_WithGFW Local GFW list",
            value: "config/ACL4SSR_WithGFW.ini"
      }
    ]
  },
  1. Since the free Heroku account has only 550 hours of usage time per month, we need multiple accounts. Please refer to this article https://blog.imkcp.xyz/cf-workers/

Similarly, replace it with the CF Pages URL or a custom workers address.

Finally, deploy to your preferred static web service provider.

Loading...
Ownership of this post data is guaranteed by blockchain and smart contracts to the creator alone.