如何允许 Web 项目进行调试,而无需在项目中存储服务器配置?

发布于 2024-07-15 22:18:00 字数 120 浏览 9 评论 0原文

我想将我的项目设置为在 IIS 中运行,因为开发服务器在投入生产时导致了误报。

然而,我不希望我那些不那么偏执的同事被迫这样做。 我可以关闭附加到 iis 时启动的开发服务器,而不强制我的同事这样做吗?

I want to set my project to be run in IIS, because the development server has caused false positives when going to production.

However, I don't want my less paranoid colleagues to be forced into this. Can I turn off the development server launching when I attach to iis, without forcing it on my colleagues?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

等待我真够勒 2024-07-22 22:18:00

如果我理解这个问题,那么您遇到的问题是,您对 web.config 的本地更改不断被签入源代码管理...因此,如果您在 web.config 中设置用于调试的编译节点,然后将其签入,则更改将影响其他开发商吗?

这是网络应用程序中最烦人的事情之一。 我使用的技术就是打败那些将本地设置签入到 web.config 的开发人员。

不过说真的......我以前使用过的一项技术是限制源代码管理中的权限,以便只有主管理员帐户可以签入对其进行的更改。

普通开发人员无权更改源代码管理中的特定文件。

开发人员手动删除 web.config 本地副本的只读标志,以便他们可以对其环境进行任何必要的更改(连接设置、调试设置等)...但他们无法意外地将这些更改签入源控制。

如果确实需要更改 web.config 文件,那么我们必须使用主管理员帐户登录才能进行更改。

If I understand the question, you are running into the problem where your local changes to web.config keep getting checked into source control... so if you setup the compilation node for debugging in web.config then check it in, the change will affect other developers?

It is one of the more annoying things about web apps. The technique I use is to just beat the crap out of any of my developers that check in local settings to web.config.

Seriously though... one technique that I've used before is to just limit permissions in source control so that only a master admin account can check in changes to it.

Regular developers don't have rights to change that particular file in source control.

The devs manually remove the read-only flag for their local copy of web.config so they can make any necessary changes for their environments (connection stings, debug settings, etc)... but they cannot check in those changes by accident to source control.

If a change is really needed to the web.config file then we have to log in with the master admin account to make the change.

冷心人i 2024-07-22 22:18:00

嗯,我有兴趣知道您的项目的默认服务器是什么 - 因为它肯定是这些选项之一?

反正。 对于您想要做的事情,有一个“漫长的路要走”:

  1. 在 IIS 管理器中,将一个站点指向项目的根目录,从那里启动并运行应用程序(如果您使用的是 WinXP,请查看 IISAdmin.Net,一个在 XP 上设置多个站点的出色工具。
  2. 从 Visual Studio 中构建您的网站(或者如果是网站,请确保保存所有内容)。
  3. 在您选择的浏览器中从站点请求页面。
  4. 在 Visual Studio 中转到:
    1. 调试或工具
    2. 附加到进程...
    3. 选择 w3wp
    4. 附加

您现在将调试网站工作进程。

如果您在远程计算机上运行 IIS 并且使用 VS2k8,则需要确保在远程计算机上安装了 Visual Studio 远程调试监视器 - 这些文件通常可以在 VS2k8 安装目录中找到:

\Microsoft Visual Studio 9.0\Common7\IDE\远程调试器

(某处有一个安装程序,但我目前似乎找不到它)。

Hmm, I'd be interested to know what the default server for your project is - because surely it's one of those options?

Anyway. There's a "long way round" to what you want to do:

  1. In IIS Manager, point a site to the root of your project, getting the application up and running from there (if you're on WinXP, take a look at IISAdmin.Net, a great tool for setting up multiple sites on XP).
  2. From Visual Studio, build your site (or if it's a Web Site, make sure everything is saved).
  3. Request a page from the site in your browser of choice.
  4. In Visual Studio go to:
    1. Debug or Tools
    2. Attach to Process...
    3. Select w3wp
    4. Attach

You'll now be debugging the website worker process.

If you are running IIS on a remote machine and you're using VS2k8, you'll need to ensure you have the Visual Studio Remote Debugging Monitor installed on the remote computer - the files can usually be found in your VS2k8 install directory:

\Microsoft Visual Studio 9.0\Common7\IDE\Remote Debugger

(There's an installer around somewhere, but I can't seem to find it at the moment).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文