Tag: azure

无法用sequelize连接到SQL Azure数据库,但本地主机上的SQL Server工作正常

我已经用MongoDB部署了Heroku的几个站点,但是这是我第一次使用SQL创build站点并尝试部署到Azure,所以我可能会丢失一些明显的东西。 我一直在使用Node.js(SQL Server数据库)和Sequelize(作为ORM)开发我的开发机器上的网站。 一切工作正常,但是当我试图部署到连接string的Azure我无法连接到SQL Azure数据库。 我可以使用SQL Server Management Studio连接到Azure上的空数据库,所以我确定我的连接信息是正确的。 当我尝试部署到Azure时,我尝试使用Azure提供的连接string: var Sql = require('sequelize'); var sql = new Sql('Driver={SQL Server Native Client 11.0};Server=tcp:server.database.windows.net,1433;Database=databasename;Uid=UserName@server;Pwd={password};Encrypt=yes;TrustServerCertificate=no;Connection Timeout=30;'); 当我尝试连接这个string时,我得到的错误是: C:\Users\username\Documents\GitHub\event-site\node_modules\sequelize\lib\sequelize.js:110 options.dialect = urlParts.protocol.replace(/:$/, ''); ^ TypeError: Cannot read property 'replace' of null at new Sequelize (C:\Users\v-mibowe\Documents\GitHub\event-site\node_modules\sequelize\lib\sequelize.js:110:40) at Object.<anonymous> (C:\Users\v-mibowe\Documents\GitHub\event-site\routes\db-routes.js:68:11) at Module._compile (module.js:435:26) at Object.Module._extensions..js (module.js:442:10) at Module.load (module.js:356:32) at […]

Grunt无法在Azure网站上运行

我正在尝试使用Azure的Git部署来构build和打包项目。 我创build了以下文件 .deployment deploy.cmd Gruntfile.js package.json 我的.deployment文件调用了deploy.cmd 。 deploy.cmd通过将path设置为包含Node.js和npm的检查副本来设置环境。 我可以打电话给npm install就好了。 当我调用grunt ,它似乎执行到第一个标准输出消息,然后返回并设置错误返回码。 除此之外,我没有收到任何其他消息。 其他命令似乎运行得很好。 我试过把STDERR弄出来,没有运气。 我尝试在远程执行控制台下运行,没有运气。 我的Gruntfile.js本地运行就好了。 有没有我失踪的魔法酱?

哪个版本的node.js在Windows Azure网站上运行?

实际上哪个版本的node.js在Windows Azure网站上运行?

Windows Azure上的node.js站点的默认根(server.js)文件

看起来像Windows Azure预计你的node.js网站应该运行: node server.js 有没有办法改变这个命令? 具体来说,我的应用程序的根目录是server.js index.js intead,所以我宁愿这样做: node index.js 任何人都知道这是否可configuration? 即使是这样,是否通常认为不是server.js之外的任何东西?

在Windows Azure的子文件夹下共享链接问题托pipeGhost博客

我已经通过azure色的市场build立了一个幽灵博客,应该是从https://github.com/felixrieseberg/Ghost-Azure点击部署到azure的平等 比方说,我有: theblog .azurewebsites.net / 我希望它是在https://www.mycustomdomain.com/blog ,我有另一个应用程序服务的主要网站,让我们说在主网站.azurewebsites.net /这个网站有mycustomdomain.com DNS所有设置与证书。 在这个网站中,我有在web.config重写 <rule name="Reverse Proxy to blog" stopProcessing="true"> <match url="^blog(.*)" /> <action type="Rewrite" url="https://theblog.azurewebsites.net/blog/{R:1}" /> </rule> 目前我正试图在临时网站上获得这个权利,所以我在https:// mainsite -staging .azurewebsites.net / blog / 上面的重写成功地向我展示了在blog.azurewebsites.net上托pipe的博客,而无需更改浏览器中的url。 在博客我也有websiteUrl应用程序设置为https://www.mycustomdomain.com.au/blog所以我的规范url在博客文章是正确的。 剩余的问题 如果我点击博客中的徽标,则链接是https:// theblog .azurewebsites.net,而不是https://mainsite-staging.azurewebsites.net/blog或https://www.mycustomdomain.com/blog 家庭链接,即使在导航设置中指定为https://www.mycustomdomain.com/blog链接到https:// theblog .azurewebsites.net Twitter和Facebook的共享链接基于共享https:// theblog .azurewebsites.net 我在互联网上search了很久 我回答:原来,还有一个网站UrlSSL的应用程序设置,没有提到自述。 我只是需要设置这一点。

错误:EPERM,Node.js和Etherpad Lite不允许的操作

我试图让我的计算机上运行IIS的Etherpad精简版网站,然后将其上传到Azure Web站点,但是当我尝试( http://pastebin.com/4rZWbqix )时出现此错误: iisnode处理请求时遇到错误。 HRESULT:0x2 HTTP状态:500 HTTP原因:内部服务器错误 您正在接收此HTTP 200响应,因为system.webServer/iisnode/@devErrorsEnabledconfiguration设置为“true”。 除了node.exe进程的stdout和stderr的日志之外,还可以考虑使用debugging和ETW跟踪来进一步诊断问题。 node.exe进程生成的stdout和stderr输出的最后64k如下所示:fs.js:520 return binding.lstat(pathModule._makeLong(path)); ^ Error: EPERM, operation not permitted 'C:\Users\Matthew' at Object.fs.lstatSync (fs.js:520:18) at Object.realpathSync (fs.js:1047:21) at tryFile (module.js:142:15) at Function.Module._findPath (module.js:181:18) at Function.Module._resolveFilename (module.js:336:25) at Function.Module._load (module.js:280:25) at Module.runMain (module.js:492:10) at process.startup.processNextTick.process._tickCallback (node.js:244:9) 在Etherpad的目录中没有fs.js文件,所以我认为它是Node.js的一部分有问题。 我是新的Node.js,所以任何帮助,将不胜感激。 编辑1:我目前正在寻找Azure的替代品,并授予C:\ Users \ Matthew的权限。 但是,有可能以某种方式修改fs.js,把一个try / catch围绕binding.lstat? 编辑2:玩了一下之后(添加权限工作!),我已经得到它的工作。 […]

在Azure网站上升级节点?

我试图用Azure网站上的NPM运行一些预部署任务(unit testing等),但是VM上节点的版本是v0.10.32,当前版本的节点是v4.2.4。 我通过SCM网站对命令行没有pipe理权限,没有RDP等。 有什么办法可以升级?

使用node-gyp的node.js应用程序无法在Azure网站上部署

我build立了一个Azure网站,我试图使用一个依赖于node-gyp的示例应用程序。 我得到这个: emote: > node-expat@2.0.0 install C:\DWASFiles\Sites\node-canvas\VirtualDirectory0\site\wwwroot\node_modules\node-salesforce\node_modules\xml2json\node_modules\node-expat remote: > node-gyp rebuild remote: remote: remote: C:\DWASFiles\Sites\node-canvas\VirtualDirectory0\site\wwwroot\node_modules\node-salesforce\node_modules\xml2json\node_modules\node-expat>node "D:\Program Files (x86)\npm\1.2.18\bin\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild remote: Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch. remote: MSBUILD : error MSB3428: Could not load the Visual C++ component "VCBuild.exe". To fix this, […]

为什么babel在USERPROFILEpath中存储.babel.json

我正在azurenetworking应用上运行一个nodejs应用程序,我正在尝试使用npm在其中集成babel。 问题是,巴贝尔正试图获得一个文件 %用户资料% 名为.babel.json,一个不存在的文件。 这很可能通过以下方式安装: npm install -g babel 在azure色的networking应用程序,我似乎无法find它(即使在运行npm install -g babel在该网站的kudu)。 我使用kudu将%USERPROFILE%的文件复制到%USERPROFILE%但在Web应用程序中重新启动文件消失。 有没有一种方法可以使网页上的应用程序babel工作? UPDATE 我没有做一些事情。 当我尝试加载babel/register时出现错误。 require('babel/register')({ optional: ["es7.asyncFunctions"] }); 而我在stream日志中看到的实际错误是 应用程序抛出一个未捕获的exception,并终止:错误:ENOENT,在Object.fs的Object.fs.openSync(fs.js:438:18)上没有这样的文件或目录'D:\ local \ UserProfile.babel.json' .writeFileSync(fs.js:977:15)保存(D:\ home \ site \ wwwroot \ node_modules \ babel \ node_modules \ babel-core \ lib \ api \ register \ cache.js:35:19)。在node.js:906:3启动时(node.js:119:16),Function.Module.runMain(module.js:499:11)处的_tickCallback(node.js:419:13) 该项目在Github上

将节点上传的文件stream式传输到Azure blob存储

使用Express与Node,我可以成功上传文件并将其传递到以下代码块中的Azure存储。 app.get('/upload', function (req, res) { res.send( '<form action="/upload" method="post" enctype="multipart/form-data">' + '<input type="file" name="snapshot" />' + '<input type="submit" value="Upload" />' + '</form>' ); }); app.post('/upload', function (req, res) { var path = req.files.snapshot.path; var bs= azure.createBlobService(); bs.createBlockBlobFromFile('c', 'test.png', path, function (error) { }); res.send("OK"); }); 这工作得很好,但Express创build一个临时文件并首先存储图像,然后从file upload到Azure。 这似乎是一个低效率和不必要的步骤,我最终不得不pipe理临时文件目录的清理。 我应该可以使用Azure SDK中的blobService.createBlockBlobFromStream方法将文件直接stream式传输到Azure存储,但是我不太了解Node或Express以了解如何访问stream式数据。 app.post('/upload', function (req, res) […]