精华内容
下载资源
问答
  • 在本演练中,您将创建一个动态链接库 (DLL),其中包含可供其他应用程序使用的有用例程。使用 DLL 是一种重用代码的绝佳方式。您不必在自己创建的每个程序中重新实现这些例程,而只需对这些例程编写一次,然后从需要...

    在本演练中,您将创建一个动态链接库 (DLL),其中包含可供其他应用程序使用的有用例程。使用 DLL 是一种重用代码的绝佳方式。您不必在自己创建的每个程序中重新实现这些例程,而只需对这些例程编写一次,然后从需要该功能的应用程序引用它们即可。

    本演练使用本机 C++。有关使用本机 C++ 创建静态库的演练,请参见 演练:创建和使用静态库。有关使用面向公共语言运行库的 Visual C++ 的演练,请参见演练:创建和使用托管程序集

    本演练涵盖以下内容:

    • 创建新的动态链接库 (DLL) 项目

    • 向动态链接库添加类

    • 创建引用动态链接库的应用程序

    • 在控制台应用程序中使用类库的功能

    • 运行应用程序

    本主题假定您具备 C++ 语言的基础知识。

    创建新的动态链接库 (DLL) 项目

    1. 从“文件”菜单中,选择“新建”,然后选择“项目…”。

    2. 从“项目类型”窗格中选择“Visual C++”下的“Win32”。

    3. 从“模板”窗格中,选择“Win32 控制台应用程序”。

    4. 为项目选择一个名称,如MathFuncsDll,并将其输入“名称”字段。为解决方案选择一个名称,如“DynamicLibrary”,并将其输入“解决方案名称”字段。

    5. 按“确定”启动 Win32 应用程序向导。在“Win32 应用程序向导”对话框的“概述”页中,按“下一步”。

    6. 从“Win32 应用程序向导”中的“应用程序设置”页中,选择“应用程序类型”下的“DLL”(如果可用),或者选择“控制台应用程序”(如果“DLL”不可用)。某些版本的 Visual Studio 不支持使用向导创建 DLL 项目。您可以稍后对此进行更改,以将项目编译为 DLL。

    7. 从“Win32 应用程序向导”的“应用程序设置”页中,选择“附加选项”下的“空项目”。

    8. 按“完成”创建项目。

    向动态链接库添加类

    1. 若要为新类创建头文件,请从“项目“右键菜单中选择“添加新项…”。将显示“添加新项”对话框。从“类别”窗格中,选择“Visual C++”下的“代码”。从“模板”窗格中,选择“头文件(.h)”。为头文件选择一个名称,如MathFuncsDll.h,并按“添加”。将显示一个空白文件。

    2. 添加一个名为“MyMathFuncs”的简单类,以执行常见的算术运算,如加、减、乘和除。代码应与以下内容类似:

      // MathFuncsDll.h

      namespace MathFuncs
      {
          class MyMathFuncs
          {
          public:
              // Returns a + b
              static __declspec(dllexport) double Add(double a, double b);

              // Returns a - b
              static __declspec(dllexport) double Subtract(double a, double b);

              // Returns a * b
              static __declspec(dllexport) double Multiply(double a, double b);

              // Returns a / b
              // Throws DivideByZeroException if b is 0
              static __declspec(dllexport) double Divide(double a, double b);
          };
      }
    3. 请注意上面的方法声明中的 __declspec(dllexport) 修饰符。这些修饰符使 DLL 能够导出该方法以供其他应用程序使用。有关更多信息,请参见 dllexport, dllimport

    4. 若要为新类创建源文件,请从“项目”菜单中选择“添加新项…”。将显示“添加新项”对话框。从“类别”窗格中,选择“Visual C++”下的“代码”。从“模板”窗格中,选择“C++ 文件(.cpp)”。为源文件选择一个名称,如MathFuncsDll.cpp,并按“添加”。将显示一个空白文件。

    5. 在源文件中实现“MyMathFuncs”的功能。代码应与以下内容类似:

      // MathFuncsDll.cpp
      // compile with: /EHsc /LD

      #include "MathFuncsDll.h"

      #include <stdexcept>

      using namespace std;

      namespace MathFuncs
      {
          double MyMathFuncs::Add(double a, double b)
          {
              return a + b;
          }

          double MyMathFuncs::Subtract(double a, double b)
          {
              return a - b;
          }

          double MyMathFuncs::Multiply(double a, double b)
          {
              return a * b;
          }

          double MyMathFuncs::Divide(double a, double b)
          {
              if (b == 0)
              {
                  throw new invalid_argument("b cannot be zero!");
              }

              return a / b;
          }
      }
    6. 若要将项目生成为 DLL,请从“项目”菜单中选择“MathFuncsDll,再选择“属性…”。从左窗格中,选择“配置属性”下的“常规”。从右窗格中,将“配置类型”更改为“动态库(.dll)”。按“确定”保存更改。默认的就是DLL类型

      Note注意

      如果是从命令行生成,请使用 /LD 编译器选项指定输出文件应为 DLL。有关更多信息,请参见 /MD、/MT、/LD(使用运行时库)

    7. 编译该动态链接库,方法是选择“生成”菜单中的“生成解决方案”。会在解决方案的文件/Debug目录下生成.dll文件,我的是C:\Users\Administrator\Desktop\MathFuncsDll\Debug这样就创建了一个可供其他程序使用的 DLL。有关 DLL 的更多信息,请参见 DLL

    创建引用动态链接库的应用程序

    1. 若要创建引用并使用刚刚创建的动态链接库的应用程序,请从“文件”菜单中选择“新建”,然后选择“项目…”。

    2. 从“项目类型”窗格中,选择“Visual C++”下的“Win32”。

    3. 从“模板”窗格中,选择“Win32 控制台应用程序”。

    4. 为项目选择一个名称,如“MyExecRefsDll”并将其输入“名称”字段。从“解决方案”旁边的下拉列表中选择“添入解决方案”。这会将新项目添加到该动态链接库所属的同一个解决方案中。

    5. 按“确定”启动“Win32 应用程序向导”。在“Win32 应用程序向导”对话框的“概述”页中,按“下一步”。

    6. 从“Win32 应用程序向导”的“应用程序设置”页中,选择“应用程序类型”下的“控制台应用程序”。

    7. 从“Win32 应用程序向导”的“应用程序设置”页中,取消选择“附加选项”下的“预编译头”。

    8. 按“完成”创建项目。

    在控制台应用程序中使用类库的功能

    1. 创建新的控制台应用程序后,将为您创建一个空程序。源文件的名称与您在前面为项目选择的名称相同。在本示例中,名为“MyExecRefsDll.cpp”

    2. 若要使用在动态链接库中创建的算术例程,必须引用该动态链接库。为此,请选择“项目”右键菜单中的“引用…”。在“属性页”对话框中,展开“通用属性”节点,并选择“引用”。然后选择“添加新引用…”按钮。有关“引用…”对话框的更多信息,请参见 “<Projectname> 属性页”对话框 ->“通用属性”->“引用”

    3. 将显示“添加引用”对话框。此对话框列出了所有可以引用的库。“项目”选项卡列出了当前解决方案中的所有项目,以及它们包含的所有库。从“项目”选项卡中,选择“MathFuncsDll”然后选择“确定”。有关“添加引用”对话框的更多信息,请参见 “添加引用”对话框

    4. 若要引用动态链接库的头文件,必须修改包含目录路径。为此,请在“属性页”对话框中,展开“配置属性”节点,然后展开“C/C++”节点,并选择“常规”。在“附加包含目录”旁边,键入“MathFuncsDll.h”头文件所在的位置的路径。我的是C:\Users\Administrator\Desktop\MathFuncsDll\MathFuncsDll

    5. 动态链接库仅在运行时由可执行文件加载。必须告诉系统在哪里查找“MathFuncsDll.dll”。这是使用 PATH 环境变量实现的。为此,请在“属性页”对话框中,展开“配置属性”节点,并选择“调试”。“环境”旁边,键入以下内容:PATH=<path to MathFuncsDll.dll file>,其中 <path to MathFuncsDll.dll file> 应替换为“MathFuncsDll.dll”的实际位置。我的是C:\Users\Administrator\Desktop\MathFuncsDll\Debug  按“确定”保存进行的所有更改。

      Note注意

      如果要从命令行而不是从 Visual Studio 内运行可执行文件,必须从命令提示处手动更新 PATH 环境变量,如下所示:set PATH=%PATH%;<path to MathFuncsDll.dll file>,其中 <path to MathFuncsDll.dll file> 应替换为“MathFuncsDll.dll”的实际位置。

    6. 现在,可以在应用程序中使用“MyMathFuncs”类了。使用以下代码替换“MyExecRefsDll.cpp”的内容:

      // MyExecRefsDll.cpp
      // compile with: /EHsc /link MathFuncsDll.lib
      
      #include <iostream>
      
      #include "MathFuncsDll.h"
      
      using namespace std;
      
      int main()
      {
          double a = 7.4;
          int b = 99;
      
          cout << "a + b = " <<
              MathFuncs::MyMathFuncs::Add(a, b) << endl;
          cout << "a - b = " <<
              MathFuncs::MyMathFuncs::Subtract(a, b) << endl;
          cout << "a * b = " <<
              MathFuncs::MyMathFuncs::Multiply(a, b) << endl;
          cout << "a / b = " <<
              MathFuncs::MyMathFuncs::Divide(a, b) << endl;
      
          return 0;
      }
    7. 通过从“生成”菜单中选择“生成解决方案”,生成可执行文件。

      8.解决MSVCP90D.dll无法找到问题 :

      VS 2005在生成可执行文件时使用了一种新的技术,该技术生成的可执行文件会伴随生成一个清单文件(manifest file)(.manifest后缀文件)(其本质上是XML文档,你可以用文本编辑器打开看看),并在链接完成后将该清单文件嵌入到exe文件中(默认情况下)。而在FAT32文件系统中,在处理清单文件阶段,当增量链接时不能完成清单文件的更新(默认情况下),于是造成清单文件嵌入失败,从而使该exe文件运行时没有相应的清单文件而运行失败并提示如上错误

      解决方案很多,列举如下:
      1. 由于这是在链接动态运行库出现的问题,所以你可以选择代码生成的连接方式为/MTd而非/MDd,不用这些DLL文件从而避免问题的出现。该方法有一个很显然的缺点:适用范围有限,并且也不是我等提倡的解决问题的方式,不推荐该方法。

      2. 既然跟FAT32系统有关,那么我们可以选择在NTFS文件系统中开发从而避免该问题,此方法同上,也是采用的回避问题的方式,不为我等提倡。

      3. 该方法仍与FAT32有关:在项目的“属性|配置属性|清单工具|常规”中的“使用FAT32解决办法”选择“是”(默认为“否”),重新生成项目即可解决问题。该方法是唯一真正针对问题所在而提出的解决方法,使清单工具可以正确更新。(此方法是官方解决方法,也比较方便,推荐)

      4. 既然问题是在更新嵌入的清单文件时发生的,由于FAT32的原因而未能更新嵌入的清单文件,于是我们有如下两种解决方法:
      (1)不启用增量链接。在项目的“属性|配置属性|链接器|常规”中的“启用增量链接”选择“否”。此方法阻断了问题产生的源头,其每次生成exe文件时都直接嵌入清单文件,而不是默认的根据时戳而决定是否更新清单文件。
      (2)不嵌入清单文件。在项目的“属性|配置属性|清单工具|输入和输出”中的“嵌入清单”选择“否”,从而在生成exe文件时附随生成一个清单文件(默认情况下,其文件名为exe文件的全名加上“.manifest”),避免了嵌入清单文件可能失败的问题。在程序运行时,会用到该清单文件。显然,这种方式使可执行程序产生了更多的外部依赖,不推荐。

      另外,还有一个不能称为方法的土办法:每次Build前手动删除*.ilk文件(增量链接文件)(当然可以在项目属性中写入删除命令,使其自动执行),不推荐该土办法。

      最后,总结一下:
      1. 此问题只在特定条件下才会出现:在FAT32文件系统中编译、默认设置(增量模式、不启用FAT32解决方案、嵌入清单文件)、非第一次生成可执行文件文件(即在增量连接、更新清单文件时)。
      2. 解决方案1和4.1方便实用,推荐使用。

      9.运行应用程序

    1. 确保选择“MyExecRefsDll”作为默认项目。从“解决方案资源管理器”中,选择“MyExecRefsDll”,然后选择“项目”菜单中的“设为启动项目”。

    2. 若要运行项目,请选择“调试”菜单中的“开始执行(不调试)”。输出应如下所示:

      a + b = 106.4
      a - b = -91.6
      a * b = 732.6
      a / b = 0.0747475
    展开全文
  • 从自学前端到现在差不多一个月了,在此期间,一直有一种困惑,如何自己电脑中编写的代码生成一个链接,以便可以发布呢?今天有幸被高人指点一二,现将其分享。 第一步,网上注册一个github账号 第二步,新建一个...

    从自学前端到现在差不多一个月了,在此期间,一直有一种困惑,如何将自己电脑中编写的代码生成一个链接,以便可以发布呢?今天有幸被高人指点一二,现将其分享。

    第一步,网上注册一个github账号

    第二步,新建一个repository

    注意:这里选择public,而不是private

    点击create repository

    第三步,选择一个主题,点击settings

    第四步,添加自己的代码

    建立一个新的文件,比如

    保存

    删掉index.md

    第五步,复制链接

     https://941117pml.github.io/liru.github.io/可以看到

     

    这样就完成了简单的代码上传功能。

    转载于:https://www.cnblogs.com/pmlyc/p/6404986.html

    展开全文
  • 如何使用github创建个人博客一、git是什么二、安装Git如何开始使用Git本地代码如何提交到远程网站中远程的代码如何下载/合并到本地中三、注册一个github账号后面的逐渐更新!!! 一、git是什么 GIT,全称是分布式...

    一、git是什么

    1.1 git简介

    • 团队协作开发(中转站:GitHub:全球最大的男性交友网站)
    • 分支(本地/远程)管理
    • GIT,全称是分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。每个开发者可以通过克隆 git clone,在本地机器上拷贝一个完整的Git仓库。
      在这里插入图片描述

    1.2 git作用

    • 代码管理

    1.3 安装Git

    • 点击此链接https://git-scm.com/进入git官网下载git

    • 点击Downloads选择你所需要的版本进行下载
      在这里插入图片描述

    1.4 如何开始使用Git

    • 下载安装之后,你会在任意一个文件夹中 右键 均可以看到git bash here在改文件夹下打开终端(自带命令行工具)

    注:如果此时马上要在这个空白文件夹内开始一个项目,需要在git bash here命令行内先git init初始化本项目文件夹后(即本地仓库)再开始项目。

    如下图所示:

    在这里插入图片描述

    1.5 Git常用命令介绍

    1.5.1 初始化本地仓库

    有个命令叫 git init (初始化本地仓库—本质):在你的项目根目录中新建了一个隐藏文件夹(.git

    注:如果项目中有.git这个文件夹就不需要我们手动去初始化

    1.5.2 本地的代码如何提交到远程网站中

    • git add . (将本地代码推到本地代码中的暂存区)

    注:删除文件后需要 git add -A, 光 git add. 不行,区别如下:
    git add -A 保存所有的修改 git add . 保存新的添加和修改,但是不包括删除 git add -u 保存修改和删除,但是不包括新建文件。 所以默认使用git add -A就行。

    • git commit -m “提交信息”(将暂存区的代码正式提交到本地版本库)

    注:此命令会将git add .存入暂存区的修改文件提交至本地仓库中,若文件未添加至暂存区,则提交时不会提交任何修改。

    • git push <远程地址> <本地分支名><:><远程分支名>(将本地版本库中的代码提交到远程版本库)

    注: 上面命令表示,将本地的master分支推送到origin主机的master分支。如果master不存在,则会被新建。

    1.5.3 远程的代码如何下载/合并到本地中

    当你本地还没有项目代码的时候,需要完整的下载一个远程项目,要用到此命令:

    • git clone -b 远程分支名 远程地址

    注:如果不加-b也就是不指定哪个分支会默认master分支)

    合并某个拉取下来的分支中的代码:

    • git merge 指定远程分支

    拉取远程版本库中所有有变化的分支中的内容:

    • git fetch

    1.5.4 本地如何进行分支管理

    查看本地有哪些分支:

    • git branch

    切换分支:

    • git checkout 分支名

    新建分支:

    • git branch 分支名

    二、注册GitHaub

    2.1 注册GitHub账号

    1)打开http://github.com进入到github这个界面进行注册
    2)点击Sign up切换到注册页,填写好注册信息后点击 Sign up for GitHub 注册在这里插入图片描述

    2.2 配置SSH

    作用:为了免密码登陆,但也得需要一个“凭证”(电脑凭证:指代你的这台正在使用的电脑)在命令行中输入以下命令

    1. 首先查看你的电脑中是否有这个凭证

    cat ~/.ssh/id_rsa.pub

    1. 生成该凭证

    ssh-keygen -t rsa -C "输入你的邮箱

    注:此邮箱为你在Github注册时的邮箱(仅作为标识)
    
    1. 生成之后获取凭证

    cat ~/.ssh/id_rsa.pub

    1. 把生成的凭证添加到github里面
      4.1)首先在个人中心点击settings进入到个人界面下拉选择SSH and GPG keys在右上角有个叫New SSH keys(新的密钥)点击进去添加SSH密钥
      在这里插入图片描述

    三、GitHub Pages

    3.1 什么是GitHub Pages

    GitHub的超高人气和强大的功能,但是对于一个新手来说,看到一大堆源码,只会让人头晕脑涨,不知何处入手。他希望看到的是,一个简明易懂的网页,说明每一步应该怎么做。因此,github就设计了Pages功能,允许用户自定义项目首页,用来替代默认的源码列表。所以,github Pages可以被认为是用户编写的、托管在github上的静态网页。

    GitHub Pages的一些功能:

    1. 让一个小白能够快速的认知代码,感受到代码给你带来的快乐
    2. 程序员的福利--用最简单的语言上线自己的一个项目
    3. 它提供了我们一个域名,github的服务器中的一部分空间
    

    github提供模板,允许站内生成网页,也允许用户自己编写网页,然后上传。有意思的是,这种上传并不是单纯的上传,而是会经过Jekyll程序的再处理。

    3.2 博客页面的一个主题网站(Jekyll)

    3.2.1 jekyll是什么

    jekyll是一个简单的免费的Blog生成工具。是一个生成静态网页的工具,不需要数据库支持。但是可以配合第三方服务。最关键的是jekyll可以免费部署在Github上,而且可以绑定自己的域名

    好处:

    1. 免费,无限流量。
    2. 享受git的版本管理功能,不用担心文章遗失。
    3. 你只要用自己喜欢的编辑器写文章就可以了,其他事情一概不用操心,都由GitHub处理。
    

    缺点:

    1. 有一定技术门槛,你必须要懂一点git和网页开发;
    2. 生成的是静态网页,添加动态功能必须使用外部服务,比如评论功能就只能用disqus。
    3. 不适合大型网站,因为没有用到数据库,每运行一次都必须遍历全部的文本文件,网站越大,生成时间越长。
    

    3.2.2 jellky配置

    _config.yml文件:这是需要使用者进行自定义的文件,项目中会进行读取。

    3.3 创建博客主题网站

    3.3.1 创建博客页面

    1)点击 http://jekyllthemes.org进入到jekyll页面选择一个自己喜欢的模板,在点击HomePage按钮进入GitHub项目仓库
    在这里插入图片描述
    2)点击右上角的fork按钮(把这个项目复制到我们自己的仓库中来)
    在这里插入图片描述
    3)fork之后修改仓库名
    在这里插入图片描述

    3.3.2 访问博客页面

    通过上面的操作,就可以在浏览器访问博客页面啦~

    例如,访问我新建的博客页面:https://yueshuai00.github.io/
    在这里插入图片描述

    3.3.3把远程仓库代码克隆到本地

    在这里插入图片描述
    在命令行窗口里paste(粘贴),再跟上一个文件夹名称,回车即开始克隆
    在这里插入图片描述

    3.3.4 HTML CSS 的使用

    1)HTML的结构

    HTML不属于一种标准的图灵完备语言(图灵完备语言:可以参与任何情况下的计算的语言)

    • HTML仅仅是一种标记,这标记不是符号,是被一组尖括号包裹着的英文单词,这样的一组标记称之为标签。基本格式如下:
    <标签名 属性名1=“属性值” 属性名2=“属性值”>内容</标签名>
    
    • HTML的属性————根据不同的属性设置可以展示出不同的效果
      除了常见的双标签外还有一些标签,采用单标签的形式,例如 :<meta />

    2)网络请求的初步认知

    请求地址:任何一个请求”都需要“完整URL”
    例如:http://www.w3school.com.cn:80/html/index.asp

    • 协议
      包括:http https ws wss ftp sftp rtmp…等等
    1) 协议双方
    • 客户端:发送请求的软件(例如浏览器:谷歌浏览器 火狐浏览器 360 qq 。。。。)
    • 服务端:接收并处理请求的软件(webServer:nginx apache tomcat。。。。)
    2) 协议的内容
    • 协议的内容:处理请求的方式
    3)域名
    	1)服务器 :一台电脑
    	2)IP地址 :任何一台联网的电脑都有一个IP——在浩瀚的网络中你的电脑的一个唯一标示
    	3)IP的别名(域名) :一般由三段组成(你花钱购买的是“名+后缀”)
    
    4)端口
        1)作用 :是为一个软件“运行”提供的一个入口
        2)为webServer的运行提供的一个入口
        3)如果你发送的是https请求,那么就会拼接上:443
        4)如果你发送的是http请求,那么就会拼接上:80
    
    5)地址
        1)网络请求的本质是:打开远程电脑中的一个文件,读取其中的内容并返回
        2)你要打开的那个文件的路径:
    	        绝对路径:相对于根文件夹而言的路径
    	        相对路径:相对于当前文件夹而言的路径
    	      参照物:网站根目录(是可以自定义的)
    
    6)参数

    访问网页中所需要的一些数据
    在URL地址中,?后面是参数,多个参数之间用&链接。例如:
    https://www.baidu.com:443/s?ie=utf-8&f=8&rsv_bp=1&tn=monline_4_dg&wd=2325

    3.3.5 在自己喜欢的编辑器中修改clone下来的模板并发布

    1)打开Git Bash Here这个终端输入以下命令,如图所示:
    在这里插入图片描述
    注意:ls是查看当前目录下的文件,当前目录中的blogclone 远程仓库时,在项目根目录下创建的文件夹,里面存放有clone下来的网站文件。

    2)cd blog 进入到此文件夹中,如图所示:
    在这里插入图片描述
    3)由于修改了仓库中的代码,输入 git status 点击回车,就可以看到修改过的_comfig.yml文件变成了红色,表示还没有推送到暂存区
    在这里插入图片描述
    4)输入以下两行代码你就会发现修改的_comfig.yml文件变成了绿色,这就表示已经推送到了暂存区,但是没有正式提交到本地版本库,如图所示:
    在这里插入图片描述
    5)执行以下命令提交到本地版本库,如图所示:
    在这里插入图片描述
    注意:fourth push 只是作为此次提交的备注信息,可随便填写!
    origin 是下图图片中所复制的别名(也可以把origin修改成下图复制中的内容)在这里插入图片描述
    6)如果你是第一次使用,需运行如下命令

    git config :当你是第一次安装git,并且第一次提交的时候会提示你执行两行命令。
    git config --global user.name "名字" 设置你的名字
    git config --global user.email "邮箱" 设置你的邮箱
    

    至此,修改文件代码并提交本地版本库工作完成,网站已可正常访问:
    本文blog访问地址:https://yueshuai00.github.io/

    四、用Docker搭建服务器

    4.1 购买服务器及域名

    • 系统选择

      • Windows
      • linux
      • ubuntu (推荐)
      • Mac
    • 工具选择

      • Xshell:用来登陆远程服务器 用终端控制远程服务器
      • Xftp :向远程服务器传文件

    本实例采用阿里云介绍,阿里云官方地址(https://www.aliyun.com/

    1. 首先注册一个阿里云账号(如有:请跳过)
    2. 登录后选择云服务器ECS:请看下图
      在这里插入图片描述
      点击后进入购买界面,如图所示:
      在这里插入图片描述
      2.1 点击购买,跳转页面如图所示:
      在这里插入图片描述在这里插入图片描述
      2.2 配置好了之后点击下一步,如图:
      在这里插入图片描述在这里插入图片描述
      2.3 配置好了在点击下一步,如图:
      在这里插入图片描述在这里插入图片描述
      2.4 配置好了点击下一步,如图:
      在这里插入图片描述
      到了这一步点击确认订单,购买(接下来进入到控制台界面就可以看到你所购买的服务器了)

    记录下IP(公网),打开Xshell,连接到服务器。

    4.2 购买域名(略,不懂自行百度)

    4.3 远程连接服务器

    1. 打开Xshell新建一个会话
      在这里插入图片描述
    2. 属性面板配置
      在这里插入图片描述

    输入cd / 进入根目录,键入 ls(查看命令)可以看到当前目录下的文件列表。cd + ls 配合使用相当于windows的双击。

     cd /
    

    在这里插入图片描述
    这样就能看到Ubantu系统的所有文件夹。再次输入cd ,回到购买登录时的位置

    4.3.1 使用Docker搭建环境

    博客是一个纯粹静态网页,想把博客放上去运行,只需要WebServer就可以实现需求。这里我们采用Docker

    1) 修改镜像源
    进入阿里云镜像网站
    在这里插入图片描述
    2) 备份镜像源文件

    终端中输入命令如下:

    mv /etc/apt/sources.list /etc/apt/sources.list.bak
    

    3) 新建镜像源文件

    输入以下命令进入编辑器,然后按a键进入编辑模式。接着复制阿里云官方ubuntu16.04的配置,并粘贴到 vim编辑器中。

    vim /etc/apt/sources.list
    

    Ubuntu 16.04配置如下:

    deb http://mirrors.aliyun.com/ubuntu/ xenial main
    deb-src http://mirrors.aliyun.com/ubuntu/ xenial main
    
    deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main
    deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main
    
    deb http://mirrors.aliyun.com/ubuntu/ xenial universe
    deb-src http://mirrors.aliyun.com/ubuntu/ xenial universe
    deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
    deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
    
    deb http://mirrors.aliyun.com/ubuntu/ xenial-security main
    deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main
    deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
    deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security universe
    

    键盘上按ESC,退出编辑模式,再在命令行输入:wq,敲回车保存修改。

    4) 更新源信息

    键入以下命令:

    apt-get update
    

    如图:

    在这里插入图片描述
    5) ubuntu 16.04 安装docker 以及docker-compose

    安装Docker:

    apt-get install docker.io
    

    注:出现提示,敲Y后回车开始安装

    查看安装是否成功:

    docker -v 或 docker -version
    

    回车运行后出现版本号即为成功

    在linux系统中如何查看某个软件是否安装成功
    该软件名(命令名) -v 或者 软件名(命令名) --version
    出现版本号 即为安装成功
    

    6) 更换Docker镜像源

    在这里插入图片描述

    (1)

    sudo mkdir -p /etc/docker
    

    (2)

    sudo tee /etc/docker/daemon.json <<-'EOF'
    {
      "registry-mirrors": ["https://q829bswc.mirror.aliyuncs.com"]
    }
    EOF
    

    (3)

    sudo systemctl daemon-reload
    

    (4)

    sudo systemctl restart docker
    

    执行完毕即完成了镜像源更换。

    7) 安装docker-compose

    安装命令:

    sudo curl -L "https://get.daocloud.io/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    

    docker-compose添加一个执行权限

    chmod +x /usr/local/bin/docker-compose
    

    将课件中的docker文件夹 拖拽到服务器中的家目录(你一开始进入服务器时所在的文件夹)

    说明:上传前,请将docker\phpdocker\nginx下的nginx.conf文件修改为正确的域名,如下图:

    在这里插入图片描述
    查看docker-compose是否安装成功

    docker-compose -v
    

    出现版本号即为成功

    8) 安装nginx 搭建环境

    在Xshell中键入命令:

    // 进入docker文件夹
    cd docker
    

    执行 docker-compose up -d 命令 启动docker

    4.3.2 上线博客

    • 在你本机安装ruby(ruby下载链接:https://rubyinstaller.org/downloads/
      • 在本机终端 敲击 gem install jekyll(大概5分钟左右)
      • 在本机终端敲击jekyll -v 出现版本号即为成功
      • 在项目根目录中 jekyll build 就会出现_site

    选择2.6版本,下载后直接安装,并在本机运行cmd 命令行工具,输入如下命令:

    gem install jekyll
    

    查看是否安装成功:

    jekyll -v
    

    打开 Git Bash Here 进入到blog项目文件夹,执行项目打包:

    jekyll build
    

    ls查看项目文件夹,会发现多了一个_site文件夹(这个文件夹里的所有文件就是要放到网站上的文件)。然后用Xftp将文件上传到服务器。

    4.3.3 上传网站

    (1)
    逐级点开文件夹:/root/docker/www/blog
    即:把文件放到docker文件夹下面的www文件夹下的blog文件夹里。

    (2)
    删除原有的html测试文件。将左边本地的文件全部选中拖拽到右侧服务器blog文件夹下(稍等即上传成功)

    在这里插入图片描述

    4.3.5 访问博客

    如果没有域名,可直接用IP地址访问

    在这里插入图片描述

    展开全文
  • 4.那么如何编写我们自己的函数呢。 5.下面我们就开始编写我们的第一个程序。 5.而后我们对.c文件以及.h文件进行保存。进行编译。 6.编译成功之后我们就得到了一个dll文件。这个文件就在你的最初保存项目的路径...

    1.打开Dev-C++点击菜单框的文件。
    在这里插入图片描述
    2.选择新建,选择项目后出现这个窗口,再点击DLL如图所示。
    在这里插入图片描述
    在这里插入图片描述
    3.点击确认之就会让你选择项目的保存路径。选择完保存路径之后就会出现以下内容。
    在这里插入图片描述
    4.那么如何编写我们自己的函数呢。
    在这里插入图片描述
    5.下面我们就开始编写我们的第一个程序。
    在这里插入图片描述
    在这里插入图片描述
    5.而后我们对.c文件以及.h文件进行保存。进行编译。
    在这里插入图片描述
    6.编译成功之后我们就得到了一个dll文件。这个文件就在你的最初保存项目的路径下面。
    在这里插入图片描述
    7.那么如何测试我们dll动态文件是否可用下面我用Python进行举例。
    将项目3.dll改为first.dll
    在这里插入图片描述
    以上就是用Dev-c++生成的dll文件

    展开全文
  • 有了LAMP环境之后,咱们就要给论坛创建一个数据库: 进入容器:docker exec -it lamp2 /bin/bash 初始化数据库:mysql_secure_installation 按照提示把密码(123456)设置好; 进入mysql (...
  • 如何创建一个基本JQuery的插件

    万次阅读 2017-08-14 18:32:22
    如何创建一个基本的插件 有时您希望在整个代码中提供一些功能。例如,也许你想要一个单一的方法,你可以调用一个jQuery选择,对选择执行一系列的操作。在这种情况下,您可能需要编写一个插件。 链接jQuery如何工作...
  • https://www.zhihu.com/question/37627092背景:作者:Xiaoyu Ma链接:https://www.zhihu.com/question/37627092/answer/72948056...对小公司来说,大概自己两台机器架集群算算,也算是大数据平台了。在初创阶...
  • 如何创建一个python的虚拟环境?

    千次阅读 2020-06-05 07:02:08
    致读者: 博主是一名数据科学与大数据专业大二的学生,真正的一个互联网萌新,写博客一方面是为了记录自己的学习过程中遇到的问题和思考,一方面是希望能够帮助到很多和自己一样处于困惑的读者。 > 由于水平有限...
  • 您想在WordPress中为文章、页面和其他类型的文章创建自定义永久链接吗? 最近我们朋友问我们是否可以在WordPress中...自定义永久链接基本上是一个URL结构应用到WordPress的一个特定页面,而不影响你的URL结构的其余部分
  • ADO不使用CurrentProject.Connection或输入您自己的... 它们实现了一个图形界面,用于构造复杂而令人困惑的OLE DB连接字符串。 它们提供了一种方法,允许用户编辑连接信息,例如,通过输入自己的用户名和...
  • 博主自己也是一个刚开始学习ext的小白,学习新知识一定要记录下来,直接复制自己原来写的培训手册里的,希望能帮到刚接触ExtJs的你!——[作者:伊利蛋白钙yL 原文链接:...
  • Java的问题数据库中有一个条目,注释中包含一些代码,但是我想知道在一个常用的库(Apache Commons等)中是否找到标准解决方案? #1楼 这是我决定为自己的代码执行的操作: /** * Create a new temporary ...
  • 3 实现getConnection从LinkedList返回一个链接 4 提供将链接放回方法 Public class MyDataSource inplements DataSource{ Private LinkedList dataSource=new LinkedList<>(); Public MyDataSource(){ For( ...
  • 如何创建一个属于自己的控制器: 第一步:在php7tpsite\Application\Home\Controller这个目录下 第二步:在UserController.class.php中的内容如下: 第三步:看运行效果 总结说明:自定义控制器的声明 第一步:声明...
  • 创建一个Javaweb项目下载Idea软件Javaweb环境的配置创建一个Javaweb项目 下载Idea软件 链接: idea官网下载地址 可以下载社区版或者专业版,专业版学生可以申请免费。 链接: 如何申请学生idea免费版本 因为本人...
  • 下面是一个链接列表的快速示例,它在列表的开头插入一个新链接,从列表的开头删除并循环遍历列表以打印其中包含的链接。此实现的增强功能包括使其成为双链表,添加从中间或结尾插入和删除的方法,以及添加get和sort...
  • 如何创建自己的apt软件源

    千次阅读 2020-06-15 20:10:03
    创建apt软件源有一个非常好用的工具aptly aptly 软件文档 软件安装 在 /etc/apt/sources.list 中添加 deb http://repo.aptly.info/ squeeze main 添加公钥 apt-key adv --keyserver pool.sks-keyservers.net --recv...
  • 目录高质量高逼格对自己好一点参考高质量首先我们来定义一下什么是高质量,不同于美的定义(一千个读者可能有一千个哈姆雷特),对于高质量,我们可以达成一个共识。过有效的单元测试相信对于单元测试的作用,大家都...
  • 有些时候,我们想写自己的函数库以避免重复写代码,此文介绍如何使用Visual Studio编写自己的动态链接库。 0,实验环境说明:  集成开发环境:Visual Studio 10.0 ... 介绍如何使用Visual Studio建立一个...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,780
精华内容 712
关键字:

如何自己创建一个链接