Ubuntu 24 云服务器上部署网站_详细版_1

发布于:2025-04-07 ⋅ 阅读:(13) ⋅ 点赞:(0)

从零开始,在 Ubuntu 24 云服务器上部署一个支持登录和权限的网站,用 Python + Django 实现,适合新手跟着操作。

🔧 第一步:更新服务器并安装基础环境

请使用 SSH 登录你的 Ubuntu 24 云服务器(用 MobaXterm、Xshell 或终端),然后执行以下命令:

sudo apt update && sudo apt upgrade -y

✅ 安装 Python3、pip 和虚拟环境工具

sudo apt install python3 python3-pip python3-venv -y

📁 第二步:创建网站项目文件夹和虚拟环境

要在一个独立的目录中创建 Django 项目,并用虚拟环境管理依赖。

mkdir ~/mywebsite
cd ~/mywebsite
python3 -m venv venv
source venv/bin/activate

会看到前面有 (venv),说明虚拟环境启用了。

📦 第三步:安装 Django 和 Gunicorn

pip install django gunicorn

🚀 第四步:创建 Django 项目

pip install django gunicorn

注意最后的 . 表示在当前目录创建,不会多生成一层目录。

🧱 第五步:配置 Django 项目基本信息

编辑 myproject/settings.py,修改:

deactivate
cd ~/mywebsite
nano myproject/settings.py
1. 允许访问的域名/IP

找到这一行:

ALLOWED_HOSTS = []

改成你的服务器 IP 或域名,例如:

ALLOWED_HOSTS = ['123.123.123.123', 'yourdomain.com']

 如果你暂时没有绑定域名,可以只填服务器的公网 IP。

2. 设置静态文件路径

在文件最后添加:

Ctrl + _(就是 Ctrl 和下划线 _,其实是 Ctrl + Shift + -),再按 999 跳到文件底部。

STATIC_ROOT = BASE_DIR / 'staticfiles'

 这是为了后面部署时收集静态文件用的。

💾 保存文件并退出:

按下:

Ctrl + X

然后按:

Y 回车

 就保存并退出编辑器了。

🧮 第六步:初始化数据库 + 创建超级用户

在已经激活虚拟环境的前提下(命令行前面有 (venv)),在项目根目录执行以下命令:

python manage.py migrate
python manage.py createsuperuser

根据提示输入用户名、邮箱和密码。这个账号之后可以登录后台。

🧪 第七步:运行开发服务器测试

python manage.py runserver 0.0.0.0:8000

然后在浏览器中访问:

http://你的服务器IP:8000/

能看到 Django 的欢迎页面!🎉

第八步:创建登录系统和页面跳转功能

创建 Django App(叫 main)

在项目目录venv下运行

python3 manage.py startapp main

执行完后,你会看到项目目录下多了个 main/ 文件夹。

注册这个 App 到项目里

编辑 myproject/settings.py 文件:

nano myproject/settings.py

找到这一段(INSTALLED_APPS = [...]),在里面加上一行 'main',,如下:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'main',  # 👈 加在这里
]

保存并退出(Ctrl + X → Y → 回车)。

配置 URL 路由跳转

编辑项目的总路由:

nano myproject/urls.py

改成这样(添加 include 并导入 main.urls):

from django.contrib import admin
from django.urls import path, include  # 加了 include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('main.urls')),  # 加这一行,表示把访问首页的请求交给 main 应用处理
]

保存退出。

main 添加自己的路由文件

新建文件:

nano main/urls.py

 输入以下内容(定义两个页面:主页和欢迎页):

from django.urls import path
from . import views

urlpatterns = [
    path('', views.home, name='home'),
    path('welcome/', views.welcome, name='welcome'),
]

写两个视图函数(首页 + 欢迎页)

编辑:

nano main/views.py

填入如下内容:

from django.shortcuts import render, redirect
from django.contrib.auth.decorators import login_required

def home(request):
    if request.user.is_authenticated:
        return redirect('welcome')
    return render(request, 'home.html')

@login_required
def welcome(request):
    return render(request, 'welcome.html')

添加 HTML 模板页面

1、创建模板文件夹:

mkdir -p main/templates

2、创建 home.html

nano main/templates/home.html

写入内容:

<h1>你好!欢迎来到网站首页</h1>
<a href="/admin/login/">去登录</a>

3、创建 welcome.html

nano main/templates/welcome.html

写入内容:

<h1>欢迎,{{ request.user.username }}!你已成功登录</h1>
<a href="/admin/logout/">退出登录</a>

重新启动服务器并访问

python manage.py runserver 0.0.0.0:8000

然后访问:

  • http://IP:8000/ 👉 首页,有一个“去登录”按钮

  • 点击“去登录” → http://你的IP:8000/admin/login/

  • 登录后会自动跳转到 /welcome/ 欢迎页

  • 可以点击“退出登录”来退出