【ECS】<Part 1>阿里云的ESC服务器简单部署 Django

双十一到了。。阿里云也打折了

最近双十一到了,阿里云的云服务器们对新用户都开始了巨大的折扣;
这次价格还是很划算的,立马买了个三年的,一百多块哈哈哈~

本地SSH连接

刚买好服务器,就给了我一个下马威。。。
由于以前没有使用过云服务器,有点坎坷啊

我在本地使用FinalShell完全连不上这个云服务,一直报错 认证失败。。
我尝试使用阿里云的网页的远程连接,发现workBench连接也失败
上个图看一眼吧
那这也不难发现,其实要么是禁止了root账户登录( 因为默认就是root账户,刚买的时候是没有其他账户的 ),要么就是密码登录被禁用了;这也不难解决
通过阿里云的VNC登录;检查两个事情:
1. 是否开启密码登录
2. 是否开启root登录

    操作方法: 
$ vi /etc/ssh/sshd_config 
将 PermitRootLogin no 修改为 PermitRootLogin yes
将 PasswordAuthentication no 修改为 PasswordAuthentication yes
:wq 保存退出
重启SSHD服务 $ service sshd restart
这也算是一个普遍案例把,毕竟有一些Linux对SSHD的服务有默认禁用的项目,可以选择性开启即可。

Django安装

  1. 确定Python环境
    # 直接在终端输入命令即可
    $ python
    # 应该会返回如下类似的code
    Python 3.7.4 (default, Aug  1 2012, 05:14:39) 
    [GCC 4.6.3] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> 
    
  2. 安装Django
    由于我是直接使用的阿里云的Linux镜像,中间是带了pip的,自带的python也是3的版本,所以咱们使用最简单的方法来安装
    $ pip3 install Django -i https://pypi.tuna.tsinghua.edu.cn/simple
    	-i https://pypi.tuna.tsinghua.edu.cn/simple 指定清华镜像源,下载速度更快。
    
  3. 启动验证
    新建一个测试项目
    $ django-admin.py startproject test_dj
    启动服务:
    cd test_dj 
    $ python manage.py runserver 0.0.0.0:8000 
    ……
    Starting development server at http://127.0.0.1:8000/
    Quit the server with CONTROL-C.
    

到这里,就启动成功了;天真的我以为就这样,结果我在本地电脑上无论如何都访问不了。。。

ECS云服务部署一定要注意 安全组

所以 如果Django,服务启动成功,但本地浏览器无法访问,尝试一下以下的步骤

  1. 检查防火墙
    firewall-cmd --zone=public --list-ports
    iptables -F //清除预设表 (filter) 中的所有规则链中的规则
    
  2. 授权
    python manage.py migrate
    
  3. 启动设置为 0.0.0.0启动
    python3 manage.py runserver 0.0.0.0:8000
    
  4. 阿里云的安全组策略
    添加安全组规则
        自定义TCP,端口为8000/8000
        授权类型为 IP地址段访问
        授权对象为  0.0.0.0/0
    

在这里插入图片描述
至此本次简单的部署就结束啦~
不得不说其实云服务器很方便,但是也有一些细节要多注意~~

See U

Leviathan

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
{% extends "admin/base.html" %} {% block content %} <div class="container-fluid"> <div class="row"> <div class="col-md-6"> <h2>药品列表</h2> <table class="table"> <thead> <tr> <th>ID</th> <th>药品名称</th> <th>操作</th> </tr> </thead> <tbody> {% for drug in drugs %} <tr> <td>{{ drug.id }}</td> <td>{{ drug.drug_name }}</td> <td> <a href="{% url 'admin:drug_db_drug_list_change' drug.id %}" class="btn btn-primary btn-sm">编辑</a> <form action="{% url 'admin:drug_db_drug_list_delete' drug.id %}" method="post" class="d-inline"> {% csrf_token %} <button class="btn btn-danger btn-sm">删除</button> </form> </td> </tr> {% empty %} <tr> <td colspan="3">暂无药品</td> </tr> {% endfor %} </tbody> </table> <a href="{% url 'admin:drug_db_drug_list_add' %}" class="btn btn-success">添加新药品</a> </div> <div class="col-md-6"> <h2>药品相互作用</h2> <table class="table"> <thead> <tr> <th>ID</th> <th>药品1</th> <th>药品2</th> <th>相互作用</th> <th>操作</th> </tr> </thead> <tbody> {% for interaction in interactions %} <tr> <td>{{ interaction.id }}</td> <td>{{ interaction.drug1 }}</td> <td>{{ interaction.drug2 }}</td> <td>{{ interaction.interaction }}</td> <td> <a href="{% url 'admin:drug_db_drug_interaction_change' interaction.id %}" class="btn btn-primary btn-sm">编辑</a> <form action="{% url 'admin:drug_db_drug_interaction_delete' interaction.id %}" method="post" class="d-inline"> {% csrf_token %} <button class="btn btn-danger btn-sm">删除</button> </form> </td> </tr> {% empty %} <tr> <td colspan="5">暂无药品相互作用</td> </tr> {% endfor %} </tbody> </table> <a href="{% url 'admin:drug_db_drug_interaction_add' %}" class="btn btn-success">添加新药品相互作用</a> </div> </div> </div> {% endblock %} 为上述代码设置相应的视图和URL配置,并将这些视图和操作注册到Django admin页面中。
05-18
首先,需要定义视图函数来渲染药品列表和药品相互作用列表的页面。可以使用Django的通用视图类(Generic Views)来完成。 ```python from django.views.generic import TemplateView class DrugListView(TemplateView): template_name = "admin/drug_db/drug_list.html" def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) context["drugs"] = Drug.objects.all() context["interactions"] = DrugInteraction.objects.all() return context ``` 上述视图函数将会渲染名为 `drug_list.html` 的模板文件,并且会将所有的药品和药品相互作用传递给模板。 接着,需要定义URL配置来匹配请求并将其分配给对应的视图函数。 ```python from django.urls import path from .views import DrugListView app_name = "drug_db" urlpatterns = [ path("", DrugListView.as_view(), name="drug_list"), ] ``` 最后,需要将上述URL配置和视图函数注册到Django admin页面中。 ```python from django.contrib import admin from django.urls import path, include from drug_db.views import DrugListView admin.site.site_header = "药品管理系统" admin.site.site_title = "药品管理系统" admin.site.index_title = "欢迎使用药品管理系统" urlpatterns = [ path("admin/", admin.site.urls), path("drug_db/", include("drug_db.urls")), ] admin.site.register_view("drug_db/drug_list/", view=DrugListView.as_view(), name="drug_db_drug_list") ``` 上述代码将会在Django admin页面的左侧菜单中添加一个名为“药品列表”的链接,点击链接将会显示药品列表和药品相互作用列表的页面。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值