Executing PE files in ASP.Net on Linux without using Mono - asp.net

Can anyone tell me is it possible to executing '.exe' or '.dll' file(s) to run Asp.net on Linux server?
I know its possible with the use of Mono project.
But is it possible with the use of Mono Project?
Thanks in advance.

Mhh... NOT(really)
You can't execute natively exes on Linux only with Wine. I don't know if is gonna work running an asp.net server (IIS) on Linux with Wine.
Maybe you should get a try.
BTW: why not use Mono? Is it very good now. It has evolved much

Related

Developing ASP.NET application for a Linux Server [duplicate]

This question's answers are a community effort. Edit existing answers to improve this post. It is not currently accepting new answers or interactions.
For a developer with a Java background, I am interested in exploring software development using the ASP.NET tools/platform as well.
Java web applications (.jsp and servlets) can run on many server platforms.
Question: Will a .NET web application be able to run in a Linux based server? Considering the scenario of not being able to use a Windows server for hosting a web app.
So I know this is an older question but I think it could stand an updated answer.
Microsoft has officially released asp.net vnext and its open source and deploy-able to both Linux and Mac. Its all still pretty new but does rely on the latest builds of mono and thus currently needs you to compile the mono-framework but in time I suspect that it will be easier to access as various linux distros release updated versions of mono. This is a how to setup guide
This information may be somewhat volatile and with updates is due to change.
Update ASP.NET CORE 11/10/2017
asp.net vnext is now known as asp.net core.
asp.net core is being treated as a high priority in Microsoft due in part to its use with microservice architecture and docker and container technologies
It has become much more compatible with existing .net libraries due to .net standard 2.0.
It performs well when compared to other technology stacks such as go and node.js
It depends what specific .NET technologies you're using. The Mono Project provides an Apache module (mod_mono) for running ASP.NET sites, and from what I gather it works well.
Mono doesn't support all the .NET APIs, though - notably WPF (and possibly WCF too, I can't remember) - but it does provide good support for much else of the framework.
If you're starting from scratch and particularly want to target non-Windows servers, then ensuring your project works with Mono would be a good goal to aim for. However, if you need particular APIs or language features that are not supported by Mono, then you will need to use a Windows server for deployment. It's a design-time/architectural choice that should make up front.
You might want to consider this guide that helps Windows developers port their code to Mono/Linux:
Guide: Porting ASP.NET Applications - Mono
I can speak from experience. Even if your ASP.net website only uses .NET libraries supported by Mono you are going to have a hard time getting it to run if its anything beyond Hello World.
You won't have to re-write much code but you will spend hours/days/weeks dealing with little issues with mod_mono/xsp/apache configuration and file permissions and error handling and all the little things that go into a large website. (Be prepared to spend a lot of time asking questions on serverfault :) )
The problem is that a lot of people don't use Mono for ASP.net websites and so there aren't as many people reporting bugs so a lot of things that are minor bugs go un-fixed for a long time.
Now you can publish ASP.NET 5 app to Docker on Linux with Visual Studio. See the below post from Scott Haselman
http://www.hanselman.com/blog/PublishingAnASPNET5AppToDockerOnLinuxWithVisualStudio.aspx
Since the technologies evolve and this question is top ranked in google, we need to include beyond the mono the new asp.net core, which is a complete rewrite of the asp.net to run for production in Linux and Windows and for development for Linux, Windows and Mac:
You can develop and run your ASP.NET Core apps cross-platform on
Windows, Mac and Linux. ASP.NET Core is open source at GitHub.
Yes we can. get familiar with Mono Project and read this article to get started.
For ASP.NET on Linux, check out Mono.
That said, thousands of sites run on Windows Server without any issues. A poorly-configured server with any OS will be vulnerable; Linux won't save you from a poor admin.
So I guess my "best practice" for deplying an ASP.NET app would be to use Windows Server 2008 (likely Web edition). And hire a good administrator.
You can use Mono to run ASP.NET applications on Apache/Linux, however it has a limited subset of what you can do under Windows. As for "they" saying Windows is more vulnerable to attack - it's not true. IIS has had less security problems over the last couple of years that Apache, but in either case it's all down to the administration of the boxes - both OSes can be easily secured. These days the attack points are not the OS or web server software, but the applications themselves.
dotnet is the official home of .NET on GitHub. It's a great starting point to find many .NET OSS projects from Microsoft and the community, including many that are part of the .NET Foundation.
This may be a great start to support Linux.
Now a days .Net is run in multiple platforms,like linux ,Mac os etc.
but mono is not fully platform independent ,Because to deploy .NET in another OS required
third party software.so it is not like java platform independent.
Mono is running in different platform ,because of JIT is there in different os.
Mono is not fully success in moonlight(silver light in .NET) .Not only Research is going on.
Mono uses XSP2 server or apache . some of the big companies are using this project,Some of the robotic project are also running on mono.
For more details http://www.mono-project.com/Main_Page.
There is the Mono Project from Novell that will allow you to run ASP.Net on Apache.
http://www.mono-project.com/Main_Page
The Mono project is your best option. However, it has a lot of pitfalls (like incomplete API support in some areas), and it's legally gray (people like Richard Stallman have derided the use of Mono because of the possibility of Microsoft coming down on Mono by using its patent rights, but that's another story).
Anyway, Apache supports .NET/Mono through a module, but the last time I checked the version supplied with Debian, it gave Perl language support only; I can't say if it's changed since, perhaps someone else can correct me there.

Is it possible to setup a web server for asp and asp.net on linux?

I know it's MS's product,
but is it neccesary that it's hosted in windows environment?
More specificly,I need it to run in Fedora
Mono is what you are looking for. It contains the ASP.Net runtime and development environment for Linux (and others). You can't run classic ASP on it, but you most definitely can run ASP.Net. That's probably what it is best at.
[Edited to clarify that you can't run ASP on Linux with Mono]
Consider looking at Mono.

ASP.NET on a linux webserver

Can I host a asp.net application on a linux based webserver?
Do they allow .net framework to be installed on linux?
Mono might work for you. It's an open source implementation of .NET that runs on Linux. It requires installation.
You can test your ASP.NET application with MOMA (Mono Migration Analyzer) first to see if it will work.
Take a look a Mono, specifically and it's ASP.NET implementation.
Check out the mono project:
http://mono-project.com/Main_Page
It's not 1:1 to the .net framework, but it's as good as you're going to get on linux in terms of .net.
Although there is Mono project - an implementation of .NET framework for Linux OS, I'd suggest you to use Windows server to host your web applications, since Mono doesn't provide all .NET functionality.
Yes that is possible, if you have a VPS/VPC server.
In shared hosting server you coudl go for Windows/Plesk, as they have pre-installed ASP.net.
In shared hosting Linux, you may not get root access to install ASP.net, please confirm over the specification from your hosting provider.
If you have a Linux server make sure that you " root access " to install the progamming language.

ASP.NET 3.5 on Windows 2000

I am trying to get an ASP.NET 3.5 site to run on a Windows 2000 machine (not my idea!!!) but am having some problems. I have been working through copying required DLL files from C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5 into my app bin directory. This succesfully got me past the "assembly not found" errors.
However, I am now getting the following error.
Compiler executable file csc.exe cannot be found"
How can I fix this? It is primarily LINQ functionality I am looking to utilise.
You are going to have many issues as .NET 3.5 is not supported on Windows 2000 (see System Requirements).
You can try to install .NET Framework 3.5 manually. It relies on .NET 2.0 runtime + some extra stuff.
See Microsoft .NET Framework 3.5 in
Windows
2000
for install steps.
See also More details on installing
.NET 3.5 in Windows
2000
for explanations.
Install a Virtual Machine with a newer Windows in it ;-)
Many 3.5 sites will work just fine in 2.0, you just need to compile them that way. I would have whoever built the app switch to 2.0 targets and see how it goes. If that doesn't take, the VM option is probably the best way to fly.
Save yourself some time and pain, install on a platform that supports 3.5.
Trying to circumvent minimum requirements usually comes back to bite you in the end.
Just because you can doesn't always mean you should. :)
Unfamiliar with the environment, but...
More of the framework (including csc.exe) resides in %WINDIR%\Microsoft.NET\Framework\v3.5 (e.g. C:\WINNT\Microsoft.NET\Framework\v3.5) - are these files on your installation and the directory in your path?

ASP.NET in Linux !

Hi i know it sounds weird but is it possible to run ASP.NET code in LINUX any how?
Check out mono.
It is an open source cross platform implementation of the CLR.
http://www.mono-project.com/
Take a look at the Mono project.

Resources