openstack进阶:虚拟桌面usb重定向(usb映射)

【信息科学与工程学】【通信工程】第七十七篇 城域网+FTTR/FTTB/FTTC/FTTO的数学分析01 总带宽 Btotal​需考虑各业务带宽 Bi​及统计复用性(按80%计算):Btotal​=0.8∑i=1n​Bi​​。调度延迟 Di​=ri​li​​,其中 li​为包长。:dtdN2​​=hνp​APp​σap​​(Nt​−N2​)−τN2​​−hνs​APs​σes​​N2​,N2=上能级粒子数,N_t=总Er³⁺浓度,σ_ap/σ_es=吸收/发射截面,τ=荧光寿命(≈10ms),A=纤芯面积。调度分数 Scorej​=w1​umax​−umin​umax​−uj​​+w2​mmax​mj​​。 阅读详情

openstack远程云桌面要能访问本地usb盘,需要进行一些配置:

一、客户端: 采用的是virt-viewer  

下载地址:https://releases.pagure.org/virt-viewer/

我下载的是virt-viewer-x64-6.0.msi   这是windows版本的安装程序,也有linux版本,有64位,有32位,目前最新6.0版本,2.0及以下版本的编译不支持usb  redirect,建议不要下载使用

二,服务器端,让虚拟机安装支持usb redirect的驱动程序,需要在虚拟机的xml中修改设备配置,因为openstack不支持直接修改虚拟机的xml文件,可以在生成虚拟机设备配置xml的driver.py 程序中直接修改加入

 nano /opt/stack/nova/nova/virt/libvirt/driver.py

找到函数:

def _get_guest_xml(self, context, instance,network_info, disk_info,

                       image_meta, rescue=None,

                       block_device_info=None,write_to_disk=False):

.......

 

 xml = conf.to_xml()    //找到这行代码

“”” ------------以下是增加代码 参照网络教程-----------------

       pos = xml.find("</devices>")

       if pos !=-1:

           xml = xml[:pos]+" <redirdev bus='usb' type='spicevmc'> </redirdev><redirdev bus='usb' type='spicevmc'>  </redirdev> <redirdev bus='usb' type='spicevmc'></redirdev> "+xml[pos:]

“””---------增加代码结束--重复次数表示有多个usb接口----------------

LOG.debug('End _get_guest_xml xml=%(xml)s',    //这行以下是原有代码

                  {'xml': xml},instance=instance)

       return xml

修改保存后,重启nova

systemctl restart devstack@n-cpu

现在启动虚拟机,即可实现云桌面读取本地usb

三、其它

1.有些客户端宿主操作系统不支持usb redirect 需要安装驱动:UsbDk_1.0.19_x64.msi  或UsbDk_1.0.19_x86.msi

2. 如果加上声音重定向,以上完整xml是:

                xml = xml[:pos]+" <redirdev bus='usb' type='spicevmc'></redirdev><redirdev bus='usb' type='spicevmc'></redirdev>
<redirdev bus='usb' type='spicevmc'></redirdev><sound model='ich6'><alias name='sound0'/></sound> "+xml[pos:]
 

 

【信息科学与工程学】【通信工程】 第一百四十四篇 城域云网中的数学分析02 全面覆盖了文档中提到的所有业务场景(L1~L5体验、游戏加速、医疗、工业互联网、卫星、智慧城市、车联网、全息通信、云游戏、5G LAN、智慧医疗、工业TSN等)以及所有技术细节(基站、OTN、IP网络设备、城域网拓扑、FlexE、SRv6 Policy、BIER6、APN6、MEC、内生安全、数字孪生、意图驱动、AIOps、零信任、SD-WAN等),每一题都体现了多要素(基站、OTN、IP、拓扑、业务、配置、调度、优化)的联合优化。问题:在 WIFI6 空口和城域网中为直播业务分配资源,保障上行带宽。 阅读详情

相关推荐

VirtViewer 2.0 with USB Redirection(x86)

1.基于Virt-Viewer 2.0源码编译; 2.支持虚拟机USB重定向;

virt viewer Usbredir USB重定向

编译virt viewer之前执行的configure命令,是没有使能usb-redir相关的功能,virt viewer是否支持usbredir是完全依赖于spice-gtk的。 virt viewer对spice-gtk的依赖关系,可以从virt viewer的configure结果看出来 configure: Configuration summary configure: ====

kickxxx的专栏 1万+

UsbDk_1.0.21_x86.msi

安装kinectV2时,用于替代官方驱动。这样能够保证使用libfreenect2的库操作硬件。

香橙派开启VNC,通过网线和usb接口连接

安装tightvncserver后,启动VNC。使用microusb连接,直接搞putty。本地笔记本插上网线以后,直接连接。

kewei chen 976

UsbDk蓝牙游戏手柄USB驱动

UsbDk_1.0.19_x64.msi支持64位win8以上系统,Dolphin模拟器连接Wii右手柄的USB驱动,蓝牙直通功能必备必备!不需要另外安装东芝蓝牙驱动!也适用其他蓝牙游戏手柄!

ABAP 7.40+新语法实战:用VALUE和REDUCE五分钟搞定复杂内表统计

本文详细介绍了ABAP 7.40+新语法中的VALUE和REDUCE操作符,如何高效处理复杂内表统计任务。通过实战案例展示,这些新语法能将代码量减少70%以上,显著提升开发效率和可读性,特别适合大数据量下的销售数据分析、分组统计等场景。

weixin_27219587的博客 206

远程桌面协议浅析(VNC/SPICE/RDP)

由于最近项目涉及到虚拟桌面,就花了点时间找了点资料看了一下,目前常用的协议有VNC/SPICE/RDP三种,就在这里做一个简单的介绍。 三种协议的对比   SPICE VNC RDP BIOS屏幕显示 能 能 不能 全彩支持 能 能 能 更改分辨率 能 能 能 多显示器 多显示器支持(高达4画面) 只有一个屏...

weixin_30591551的博客 3801

TC397 EB配置ADC软件触发:从零实现周期采样与中断处理

本文详细介绍了如何在Infineon AURIX TC397芯片上使用EB Tresos工具配置ADC软件触发,实现周期采样与中断处理。通过硬件连接、EB模块配置、代码初始化及数据处理的全流程解析,帮助开发者快速掌握ADC软件触发技术,提升嵌入式系统开发效率。

root9的博客 231

电脑无法识别u盘怎么办_电脑无法识别U盘?5步操作让办公族轻松搞定!

世界那么大,谢谢你来看我!!对于办公族,经常会遭遇这种情况:鼠标键盘都能使用,唯独U盘识别不出来!这是怎么回事呢?难道U盘坏了?其实啊,并非是U盘损坏了,也有可能是USB被禁用了等等的情况。那么跟着小编,五步教你来排除解决问题吧!第一步:U盘插入USB接口有提示音却没有显示新的磁盘如果USB接口插入鼠标键盘可以正常使用,在插入U盘后有提示音却没有新的磁盘显示的话,我们可以右键点...

weixin_39921131的博客 1140

[0352]基于JAVA的停车场收费智慧管理系统的设计与实现

其次,从经营管理层面考虑,本系统涵盖了丰富的月卡管理和财务结算功能,如月卡用户管理、缴费、注销、挂失、解挂、补办等全流程服务,以及临保和月保的结算汇总与欠费查询等功能,这不仅有助于规范停车场的日常运营管理,更能有效提高财务管理效率,降低运营成本,实现精细化、数字化的财务管控。综上所述,本课题计划研发的基于Java的停车场收费智慧管理系统将在现有研究成果的基础上,重点优化月卡用户全生命周期管理和财务统计分析功能,以满足现代停车场高效、精准、安全的管理需求,紧跟行业发展趋势,为推动智慧城市的建设贡献一份力量。

muyu2980的专栏 589

Labview 机器视觉(4)之 图像处理进阶 - 动态ROI与批量保存

本文深入探讨了LabVIEW机器视觉中动态ROI与批量保存两大进阶技术。动态ROI通过模式匹配或粒子分析实现检测区域的自动追踪,解决了产品位置变化带来的挑战。同时,文章详细介绍了如何设计高效的文件命名规则与异步保存机制,以实现海量图像数据的批量保存与管理,从而构建稳定、高效的工业自动化检测系统。

weixin_29234423的博客 219

通过虚拟机端口转发(端口映射)进行远程访问

前言 本文各电脑均在统一网段内,如果是公司的网络,应该可以保证全部电脑都在同一网段中的 所用机器 通过virtualbox安装的一台ubuntu虚拟机(ip:1.0.7.8) 宿主机(Ip:1.2.3.4) 电脑1(ip:1.2.3.5) 操作步骤 1.设置-网络-连接方式(NAT)-高级-端口转发 2.右侧加号新增一条端口转发规则 主机ip:1.2.3.4 (通过cmd...

冲鸭冲鸭冲鸭冲鸭 8438

【华为OD】华为性格测试(综合测试)高分策略

1、性格测试非常重要,是一次否决制,18 个月有效期,所以态度一定要认真对待,不要随便乱选;2、做题原则:正向原则,积极乐观向上3、时间为 25-30 分钟,会频繁出现重复选项重复出现的题目注意一致性。

笑着的程序员的博客 3万+

OpenStack使用SPICE替换VNC——宿主机Centos8

OpenStack使用SPICE替换VNC 0x00 协议比较 参考 远程桌面协议浅析(VNC/SPICE/RDP) 在进行SPICE操作之前,对目前常用的协议VNC/SPICE/RDP三种,进行简单的比较。 协议比较 SPICE VNC RDP BIOS屏幕显示 能 能 不能 全彩支持 能 能 能 更改分辨率 能 能 能 多显示器 多显示器支持(高达4画面) 只有一个屏幕 多显示器支持 图像传输 图像和图形传输 图像传输 图像和图形传输 视频播放支持 GPU加速支

北观止的博客 1804

1.4 KFD 设备文件的获取与驱动握手协议

本文分析了OpenClose模块中libhsakmt与KFD内核驱动建立通信的过程。首先通过hsaKmtOpenKFD()函数打开/dev/kfd设备文件,建立用户态与内核态的通信通道。随后通过AMDKFD_IOC_GET_VERSION ioctl命令完成版本握手,确认双方的接口兼容性。KFD驱动采用Major.Minor二级版本号体系,当前主要版本为1,从1.1演进到1.19不断添加新功能。整个过程构成了用户态与内核态之间的"建连协议",是所有后续GPU操作的基础前提。

图形/计算GPU的驱动与虚拟化技术分享园地 602

数据分享|1961-2017年中国0.25°×0.25° 逐日地表水文数据集(VIC-CN05.1)

其中,全球径流中心(University of New Hampshire and Global Runoff Data Centre, UNH/GRDC)的复合产流场集成了观测的河道径流和水量平衡模式模拟的地表和地下径流,常被用来评估模拟的径流。在长白山、海北灌丛和千烟洲通量站,模拟与观测的逐月潜热通量的平均NSE为0.61。VIC-CN05.1受益于较准确的大气驱动场、先进的地表水文参数化方案以及更真实丰富的土壤信息,可作为中国水文气象研究的参照数据,用于陆面模式的评估和长期的趋势分析等。

J_Giser的博客 1831

OpenStack使用SPICE替换VNC——宿主机Ubuntu22.04

OpenStack使用SPICE替换VNC——宿主机Ubuntu22.04。

北观止的博客 935

DISK配置服务器软RAID工作任务(RAID1+BITLOCKER)-winserver4

DISK配置服务器软RAID工作任务(RAID1+BITLOCKER)-winserver4

新时代先锋的博客 7299

UnitedStack有云:我乘OpenStack起航 驶向企业级开源IT的远洋!

于2013年2月成立的UnitedStack有云 (下文简称有云),到今天已经有3年历史了,是中国云计算市场上不可忽视的一个品牌。2015年12月16日,身为中国第一家OpenStack云服务商 的有云宣布完成C轮融资,这也是国内第一家完成C轮融资的开源云技术创业公司。 有关有云获得C轮融资的相关评论已经很多,本文的重点也不在于此。当很多人在猜测它C轮...

weixin_34249367的博客 217

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

RemoteFX usb设备重定向-USB虚拟机重映射

1.usb设备重定向 实现的效果,如图1 各种usb-串口、视频usb、打印机 !!如果你参考我的资料,依然不能解决问题,可以参考博客:https://yq.aliyun.com/articles/457336 2.修改几点--双击修改! 1)win+r输入gpedit.msc 查到如下地址--进行-注册表修改 计算机配置\策略 \管理模板 \Windows 组件\远程桌面服务 ...

萧西朗的博客 5684

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

加密狗映射至虚拟服务器,ESXI 5.1/5.5 主机添加或映射USB设备(加密狗)(示例代码)...

将USB设备插入ESXI主机(我截图使用的是U盘),我通过vsphere client进行演示。通过vsphere client登录ESXI主机或者vCenter,编辑设置需要添加USB设备的虚拟机;添加usb控制器:控制器类型:EHCI+UHCI和xHCI。EHCI+UHCI支持usb 2.0 usb1.1的设备,xHCI支持usb 2.0 usb1.1 usb 3.0的设备。我的usb 2.0...

weixin_35853083的博客 1755

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

实现宿主机到虚拟机的端口映射(端口转发)

测试环境: 宿主机:Windows Server 2003 R2 Enterprise X64 Edition 虚拟机:VM10.0.2 ,装的CentOS7.4   需求背景: 宿主机系统更换麻烦,把外部请求从宿主机转发到虚拟机内的linux处理,宿主机开放端口8080,linux开放端口80,linux的ip为192.168.150.128   实现方式:      实现的方法...

vzdong1的博客 1万+

云计算疑难杂症解决方案 - USB重定向

不用spice协议,自有开发的远程桌面协议,那么可以将usb重定向的逻辑整理成一个模块,具体私信。在办公环境下,如何将推流客户机、瘦终端...上的usb设备重定向到虚拟机内。客户机系统,虚拟机系统是Windows或者Linux。应用 spice 协议开源项目,这个协议已经支持了。

li_jiejun的专栏 5828

云计算-openstack usb重定向代码修改

USB3.0驱动重定向代码修改

qq_36577699的博客 515

virtviewerUsbredirUSB重定向

转载自:https://blog.youkuaiyun.com/kickxxx/article/details/10097785 编译virt viewer之前执行的configure命令,是没有使能usb-redir相关的功能,virt viewer是否支持usbredir是完全依赖于spice-gtk的。 virt viewer对spice-gtk的依赖关系,可以从virt v...

F_hawk189的博客 743

openstack实例添加物理USB设备

lsusb来查看usb设备的编号 [root@localhost ~]# lsusb Bus 002 Device 006: ID 03f0:5a07 Hewlett-Packard Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 002 Device 001: ID 1d6b:00...

胡铁威的博客 2036
上一篇: openstack 进阶: 虚拟机远程桌面协议 VNC更换为spice
下一篇: 学习笔记:ubuntu16.04下Apache2.4部署Django1.11.3
领尚
博客等级 码龄14年 1143粉丝 271原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值