急,不装IIS,IP+端口号访问网站。求解

xxq9900 2012-02-25 07:17:28
老板要个程序,或者说是网站程序,要求在一个局域网内,在其中一台机器(A机)上安装(但这台机器不配置IIS),其他机器可以在IE浏览器的地址栏内输入 A机的IP+端口或者A机计算机名称+端口 的形式来访问。

网站我都做好了,但必须有IIS才可以访问,如何做成在不安装IIS的情况下,通过IP+端口号或者计算机名称+端口号来访问呢?
...全文
167 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuan.ye 2012-03-02
  • 打赏
  • 举报
回复
asp.net的WebDev.WebServer 可以实现你想的。

但是是否需要安装visual studio 我就不知道了,或者webserver依赖于其他,需要你慢慢google了
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 lsj_zrp 的回复:]

我的Windows 7 装不了IIS,装了一个什么方配网站服务器,就可以代替IIS了,这种软件一找一大堆
[/Quote]
win 7 装不了 为什么啊? 我记得大部分的win 7都只要 安装就可以了 连光盘都不需要
lsj_zrp 2012-03-02
  • 打赏
  • 举报
回复
我的Windows 7 装不了IIS,装了一个什么方配网站服务器,就可以代替IIS了,这种软件一找一大堆
孟子E章 2012-03-02
  • 打赏
  • 举报
回复
你可以使用
http://cassinidev.codeplex.com/

或者
VS自带的C:\Program Files\Common Files\Microsoft Shared\DevServer\10.0下的
WebDev.WebServer40.EXE
(.NET4.0版本下),其他版本类似
sepacec 2012-03-02
  • 打赏
  • 举报
回复
public class HttpServer
{
protected HttpListener Listener;
protected bool IsStarted = false;

//使用傳入一個URI String 例如http://127.0.0.1:8080/ 來開始一個我們的HttpServer
public void Start(string strUrl)
{
if (IsStarted) //已經再Listen就直接Return
return;

if (Listener == null)
Listener = new HttpListener();

//使用傳入的URI String 例如http://127.0.0.1:8080/
Listener.Prefixes.Add(strUrl);

IsStarted = true;
Listener.Start(); //開始Listen

//以非同步方式取得Context
IAsyncResult result = this.Listener.BeginGetContext(
new AsyncCallback(WebRequestCallback), this.Listener);
}

//停止我們的HttpServer
public void Stop()
{
if (Listener != null)
...{
Listener.Close();
Listener = null;
IsStarted = false;
}
}

//有個Web需求進來
private void WebRequestCallback(IAsyncResult result)
{
//如果Http Server已經停止則不理會
if (Listener == null)
return;

//取得Context
HttpListenerContext Context = this.Listener.EndGetContext(result);

//立即開始另一個非同步取得Context
Listener.BeginGetContext(new AsyncCallback(WebRequestCallback), this.Listener);

//處理我們的Web需求
ProcessRequest(Context);
}

//處理我們的Web需求
private void ProcessRequest(System.Net.HttpListenerContext Context)
{
HttpListenerResponse Response = Context.Response;
Stream OutputStream = Response.OutputStream;

//產生回傳的Byte Array
byte[] bOutput = System.Text.Encoding.UTF8.GetBytes("<H1>Hello World!!!</H1>");

//設定ContentType
Response.ContentType = "text/html";

//設定內容長度
Response.ContentLength64 = bOutput.Length;

//寫到Stream中
OutputStream.Write(bOutput, 0, bOutput.Length);

//關閉Stream
OutputStream.Close();
}
}
xxq9900 2012-03-02
  • 打赏
  • 举报
回复
谁能给个HttpListener做站的例子,谢谢
秋的红果实 2012-02-25
  • 打赏
  • 举报
回复
SOCKET,好像是用accept建立连接,封装TCP/IP的,记不清了,你查查资料吧
为什么不用IIS呢
种草德鲁伊 2012-02-25
  • 打赏
  • 举报
回复
你老板对IIS有什么深仇大恨...
xxq9900 2012-02-25
  • 打赏
  • 举报
回复
开始是打算用IIS的,后来又改了,2楼说的什么HttpListener编程好象靠谱,能不能具体说说,用C#该如何处理
  • 打赏
  • 举报
回复
“要个程序”,比如就是一个windows service程序或者console程序。

不是要网上下载的一堆安装包。
  • 打赏
  • 举报
回复
急也没用。我建议你赶紧告诉你的老板、改变你的老板,让他死了心,重新考虑该怎样规划产品和任务。

这类问题对你老板也是一个考验,应该按照开发人员实际能力、提前想到开发人员理解力方面的问题。
只在此山中 2012-02-25
  • 打赏
  • 举报
回复
网站你都做好了,
安装其他Web服务器,如
Apache HTTP Server for Windows
Nginx for windows
  • 打赏
  • 举报
回复
“网站都做好了”?那么你完全是花了冤枉时间。如果我是你的老板,我对你不知道如何对HttpListener编程可能并不生气,但是对于这种“网站都做好了”会非常生气。你这就好像是一个人去上厕所,还没有入门就蹲下脱裤子了,理由是“反正早晚不是也要这么操作吗?”。

你怎知道不使用IIS的网站可以支持你那样“做出来的网站”呢?不考虑这个,盲目花时间去“做网站”,让人无奈。不给你开工资吧,怕失去一个(或许的)人才;开了工资吧,其实你花费的时间完全是你自己为了兴趣而浪费的时间,不是正常的开发时间。
ayzen1988 2012-02-25
  • 打赏
  • 举报
回复
不用IIS,能用別的服務器嗎?apache..等等

110,561

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧