我使用以下命令为ASP.NET项目创建了一个Web根目录:
sudo mkdir /var/www
sudo chown www-data:www-data /var/www
sudo mkdir /var/www/example.com
sudo chown www-data:www-data /var/www/example.com
我使用的域名字面意思是example.com
从以下目录中删除default
文件,然后使用sudo service nginx restart
/etc/nginx/conf.d/
/etc/nginx/sites-available/
/etc/nginx/sites-enabled/
将以下代码添加到project.json
:
{
"dependencies": {
"Kestrel": "1.0.0-beta6",
"Microsoft.AspNet.Diagnostics": "1.0.0-beta6",
"Microsoft.AspNet.Hosting": "1.0.0-beta6",
"Microsoft.AspNet.Server.WebListener": "1.0.0-beta6",
"Microsoft.AspNet.StaticFiles": "1.0.0-beta6"
},
"frameworks": {
"dnx451": { },
"dnxcore50": { },
},
"commands": {
"kestrel": "Microsoft.AspNet.Hosting --server Kestrel --server.urls http://localhost:5004"
}
}
创建Startup.cs
:
using Microsoft.AspNet.Builder;
namespace HostKWebOnLinux
{
public class Startup
{
public void Configure(IApplicationBuilder app)
{
app.UseStaticFiles();
app.UseWelcomePage();
}
}
}
执行dnu restore
会在控制台上打印很多内容,让我觉得包已经恢复。
执行dnx kestrel
会导致:
错误:无法加载应用程序或执行命令'Microsoft.AspNet.Hosting'。可用命令:kestrel。
我在var/www/example.com
内,并尝试了dnx . kestrel
和dnx kestrel
这是 Ctrl + H 之后var/www/example.com
的样子。没有视图文件或类似的东西。
我的最终目标是使用Nginx和Kestrel
在Ubuntu 14.4上托管ASP.NET