Mingjun Zhumingjunzhu.com 中文 Contact

My website is built. How do I put it online? I had AI move it onto a server, and anyone can follow along

By Mingjun ZhuPart of Building a B2B trade website with AI, hands-on

The short answerPutting a website online doesn't require coding: you only do the 5 things AI can't do for you (enter a password once, open the ports in the cloud console, add DNS records, provide the ICP filing number, and check the result yourself at the end). Hand everything else to an AI assistant that can work on your computer, and you can be online in an afternoon.

Once a website is built on your own computer, you are actually the only one who can see it. When the computer is off, the website is gone. For other people to open it, it has to move onto a computer that is on 24 hours a day: a server.

The day my ICP filing came through, I had AI move my website onto a server. I didn't write a single line of code during the whole process. I only did the few things I had to do myself; AI did the rest, and it was finished in an afternoon. Below is the process exactly as it happened, so you can follow along.

1. What I used (other providers work the same way)

PurposeWhat I usedCan I use something else?
AI assistantClaude Code (included in the Claude desktop app)Yes. Any AI that can carry out actions on your computer works, such as Codex, Cursor, Trae or WorkBuddy. The key is that it can connect to the server and do the work itself; one that can only chat won't do
ServerAlibaba Cloud ECS, 2 vCPU / 2 GB, Ubuntu 22.04Yes. Cloud servers or lightweight servers from Tencent Cloud or Huawei Cloud work the same way; choose Ubuntu as the system
DomainBought on Alibaba CloudYes. Buy it anywhere; add the DNS records wherever its DNS is managed
ICP filingSubmitted on Alibaba CloudIf the server is in mainland China, the filing is mandatory; submit it with the provider you bought the server from. Servers in Hong Kong or overseas don't need it

2. Before you start, make sure you have these 4 things

  1. The website opens on your own computer, and you're happy with the content
  2. The server is bought, and you know its public IP and login password (visible, and resettable, in the cloud server console)
  3. The domain is bought, and its real-name verification has passed
  4. The ICP filing has been approved, and you have the filing number

3. You do 5 things; AI does the rest

You do yourselfAI does for you
1. Enter the server password onceCheck the current state of the server and the domain
2. "Open the doors" in the cloud server console (allow ports 80 and 443)Set up a "key" so you never need the password to log in again
3. Add two DNS records in the domain consoleInstall the software the website needs on the server
4. Tell AI your ICP filing numberUpload the pages, write the configuration, request the HTTPS certificate
5. At the end, open the website yourself and click through itMake the contact form work, back up daily, set up one-command updates

Why these 5 must be done by you: passwords, console settings and account operations are your identity and your money, and shouldn't be handed to AI. However well AI does, whether it counts is for you to check.

4. 10 steps

Each step includes "what to say to AI". You can copy it directly; just replace the domain with your own.

Step 1: Have AI survey the situation first

My website is going live. The domain is ××××.com and the ICP filing has been approved. The server is on Alibaba Cloud and its public IP is ×××. First check the current state of the server and the domain, tell me what is still missing, and don't change anything yet.

AI will check whether it can connect to the server, whether the domain points to the server, and which ports are open. It will list what it will do and what you need to do.

Step 2: Set up a "key" so you no longer log in with a password

Set up passwordless login from this computer to the server, user root, with a name that's easy to remember.

AI will generate a key on your computer and give you a command. Paste the command into the terminal and run it. When it asks for a password, enter the server password and press Enter. This is the only time in the whole process you enter a password.

Why do it this way: you don't tell AI the password; AI works with the key. In the last step, password login is turned off, so even if someone guesses the password they can't get in.

Step 3: Install the website software on the server

Install Nginx on the server, make it start on boot, and test that it works after installing.

Think of Nginx as the "clerk" on the server: when someone visits, it hands them the web page. AI will test it after installing; "200 OK" means it worked.

Step 4: Move the pages onto the server

Regenerate the website, check that everything is fine, then upload it to the server. Store each upload as a separate version and keep the old versions.

I had AI store every upload as a new version and keep the old ones. If something breaks later, one sentence rolls it back to the previous version.

Step 5: Tell the server "when someone visits this domain, show them this website"

Write an Nginx configuration for ××××.com pointing to the pages just uploaded. Test the configuration before applying it, and restore the original if the test fails.

After writing it, AI will test on the server what the home page, an article page and a non-existent page each return.

Step 6: Open the doors and put up the address (you do these two)

Open the doors: in the cloud server console, find your server, go to "Security groups", and add two rules under "Inbound":

  • Port 80, source 0.0.0.0/0
  • Port 443, source 0.0.0.0/0

On lightweight servers this feature is called "Firewall", and it works the same way.

Put up the address: in the domain console, find "DNS" and add two records:

Record typeHostValue
A@Your server's public IP
AwwwYour server's public IP

Don't touch existing records (such as those for company email). When done, tell AI:

The security group and DNS are both set up. Check from outside whether the website opens.

Step 7: Put a lock on the website (HTTPS)

Request a free HTTPS certificate, then redirect all http and www addresses to https://××××.com.

AI will ask you two things: whether you agree to the certificate authority's (Let’s Encrypt) terms of service, and which email to use for reminders. Just agree. The certificate is free, lasts three months, and renews automatically before it expires, so you don't have to deal with it. Once done, a small lock appears in the browser address bar.

Step 8: Put the ICP filing number at the bottom of the pages

My ICP filing number is ××ICP备××××号-1. Put it at the bottom of the website, linking to the MIIT filing lookup site.

There is also a public security filing: within 30 days of the website opening, apply on the "National Internet Security Management Service Platform" (beian.mps.gov.cn). Once you have the number, have AI put it at the bottom of the pages as well.

Step 9: Make the contact form actually work

Deploy the contact form backend too, then submit a test message from outside and see whether my mailbox receives it. Once it arrives, delete the test message.

Pages loading doesn't mean messages arrive. Always actually submit one and check whether your mailbox gets it. This time, it only counted for me once the email arrived.

Step 10: Wrap up, so things stay easy

Please finish these: turn off password login on the server; back up the message data automatically every day; do a dry run of certificate renewal; create a one-command website update, and a one-command rollback to the previous version.

After that, whenever you change the website content, just tell AI "push the changes to the website"; if something breaks, say "roll back to the previous version".

5. Pitfalls I hit, so you can avoid them

1. A proxy app was running on my computer, so AI saw fake results

I had a proxy app running (the kind people in China use to reach overseas sites). When AI checked whether the domain pointed to the server, it got a fake address from the proxy app, and I almost thought the DNS was broken. If you also run a proxy, tell AI in advance, or have it check again another way.

2. I thought the DNS records were added, but they weren't

I said the DNS records were in place; AI checked and found none. The reason: I had done it on another computer and not added them in the right place. After adding DNS records, always have AI check from outside, and don't trust "I remember adding them".

3. The ICP number was missing the "-1"

The filing system has two numbers: one for you (the person or company) and one for the website. The website's number is the first number with "-1" added at the end. The one at the bottom of the pages must be the website's number.

4. The connection to the server kept dropping

AI's connection to the server sometimes worked and sometimes got cut off. This is a network problem, not a broken server. Just have AI automatically retry a few times when it fails.

5. When requesting the certificate, AI seemed stuck for several minutes

In the certificate renewal dry run, AI waited six or seven minutes for a result. The certificate tool deliberately waits a random amount of time; this is normal, so just be patient.

6. An old image I no longer used was still on the website

When generating pages locally, old files may be left behind and uploaded along with everything else. Before uploading, have AI clear out the old build output and generate everything fresh.

7. When AI says "done", look again yourself

After each step, I had AI visit from outside and check the server logs, to confirm that people outside really could open it. At the end I also opened it myself on my phone's mobile data.

6. After going live, check these 5 things yourself

  1. On mobile data (not your home Wi-Fi), open https://your-domain: it opens, and there's a lock in the address bar
  2. Typing http://your-domain and www.your-domain both redirect automatically to https://your-domain
  3. The ICP filing number is at the very bottom of the page, and clicking it opens the MIIT website
  4. Leave a message on the contact page, and your mailbox receives it
  5. Type any address that doesn't exist, and you see the website's own "page not found", not a blank page or an error

If all 5 pass, your website is truly online. If you get stuck while following along, feel free to contact me through the website.

// FAQ

I know nothing about code. Can I do this?
Yes. What you do is click a few times in the cloud server console, copy and paste one command, and enter a password once. AI does the rest, and it tells you the result after every step.
Do I have to use Claude Code?
No. Any AI assistant that can carry out actions on your computer and connect to the server works, such as Codex, Cursor, Trae or WorkBuddy. One that can only chat won't work, because it can't act for you.
My server and domain aren't from Alibaba Cloud. Can I still follow this?
Yes. Different platforms just put the buttons in different places. If you can't find "Security groups" or "DNS", take a screenshot and ask AI.
How long does the whole process take?
This time, from the ICP filing coming through to the website opening over https and messages arriving, it took one afternoon.
Is it safe to hand the server over to AI?
Only you enter the password; AI logs in with a "key". At the end, password login is turned off, so only the key on your computer can get in. Message data is backed up automatically every day.