根据服务器部署32位或64位ELMAH与网站(Deploying 32 or 64bit ELMAH with website depending on server)
我目前正在构建一个ASP MVC 2站点,我正在寻找ELMAH来处理错误日志,但是我不确定如何处理不同的构建环境。
我的开发机器和当前的测试服务器都是32位的,生产服务器是64位的。 我可以将MVC站点设置为在x86和x64中部署,没有任何问题,但有什么办法可以让它在各自的服务器上使用32位和64位ELMAH二进制文件,而无需更改构建之间的引用DLL?
I am currently building an ASP MVC 2 site and I am looking at hooking ELMAH in for my error logging however I'm not sure how to handle the different build environments.
Both my development machine and current test server are 32-Bit and the production server is 64-bit. I can set the MVC site to deploy in x86 and x64 without any problems but is there any way I can get it to use the 32bit and 64bit ELMAH binaries on their respective servers without needing to change the referenced DLL between builds?
原文:https://stackoverflow.com/questions/3736957
更新时间:2019-09-21 13:15
最满意答案
这两个版本之间的区别归因于SQLite,因为它使用非托管代码。 如果您不使用SQLite提供程序,则无关紧要,您可以在两种环境中使用相同的版本。 如果你正在使用SQLite,那么我不知道如何做到这一点,但我收集大多数人会在生产中使用SQL Server,所以不会真的遇到这个问题。
希望有所帮助。
The difference between the two editions is due to SQLite since it uses unmanaged code. If you are not using the SQLite provider, it doesn't matter and you can use the same version in both environments. If you are using SQLite then I am not sure how to do this, but I gather most people will use SQL Server in production so won't really run into this issue.
Hope that helps.
相关问答
除了安装32位JRE / JDK,无论您的要求如何,您都不需要做任何事情。 我一直这样做。 使用64位版本的唯一真正原因是如果您的应用程序需要能够访问超过4GB的RAM(或者一些程序化的lib依赖项) 确保你安装了32位版本并将JAVA_HOME环境变量指向安装目录,所以如果你安装了JRE 1.6,JAVA_HOME应该是类似于 C:\Program Files (x86)\Java\jre1.6.0_XX 另外,在你的Path环境变量中添加%JAVA_HOME%\bin到最后,这将使所有的jav
...
这两个版本之间的区别归因于SQLite,因为它使用非托管代码。 如果您不使用SQLite提供程序,则无关紧要,您可以在两种环境中使用相同的版本。 如果你正在使用SQLite,那么我不知道如何做到这一点,但我收集大多数人会在生产中使用SQL Server,所以不会真的遇到这个问题。 希望有所帮助。 The difference between the two editions is due to SQLite since it uses unmanaged code. If you are not
...
您不能将32位驱动程序与64位应用程序一起使用,而不是像ODBC-ODBC Bridge那样分离架构。 You cannot use a 32 bit driver with a 64 bit application without something in the middle like an ODBC-ODBC Bridge which separates the architectures.
带有nginx的PHP通常作为fastcgi应用程序运行( https://www.nginx.com/resources/wiki/start/topics/examples/phpfcgi/ )。 这将通过Windows上的TCP套接字进行通信 - 因此无论是远端的64位还是32位PHP都无关紧要。 在PHP方面,如果性能是一个关键驱动因素,那么你的新功能 - 你会考虑考虑使用php 7,因为它在php5系列上有很多性能提升。 php 7的开发在他们页面底部的谷歌文档电子表格上有一些基准测试h
...
在QTcpServer :: incomingConnection中发现了问题。 在QT5.4上使用qintptr作为socketDescriptor。 保证此类型与Qt支持的所有平台上的指针大小相同。 在具有32位指针的系统上,qintptr是qint32的typedef; 在具有64位指针的系统上,qintptr是qint64的typedef。 这就是它在32位而不是在64位机器上工作的原因。 (纯粹的运气) Found the issue in QTcpServer::incomingCon
...
CPU并不重要,JavaScript是一种高级的解释性编程语言,只要它运行的引擎正常工作,它根本不关心架构。 在你的情况下,它听起来像客户端的JavaScript,它运行在客户端(通常),这基本上是用户计算机,而不是你的服务器。 The CPU doesn't matter, JavaScript is a high-level interpreted programming language, it doesn't really care about the architecture at al
...
不会有问题,它们基本上是独立的,因为它们之间的协议已经由另一个通道完成。 我也有他相同的设置,它工作得很好。 There won't be a problem, they are basically independent since the protocol between them has done by another channel. Also I've got he same setup and it works just fine.
整数是该平台上指针的大小。 (32位PHP - > 32位整数.64位PHP - > 64位整数)。 请注意,当整数运算溢出时,变量变为浮点数。 PHP文档很好地解释了所有这些。 我不确定你在代码中做了什么会导致你关心整数的大小。 但是,如果您只关心32位的值,则可以始终屏蔽低32位: $val = $something & 0xFFFFFFFF;
Integers are the size of pointers on that platform. (32-bit PHP --> 32-bit
...
尝试安装包lib32gfortran3 ,因为这将安装32位版本的libgfortran库。 在启动程序之前,您最终可能需要设置LD_LIBRARY_PATH="/usr/lib32:"但是如果没有它,它可能也会运行。 I'm not sure if this was an oversight on my part or something else; but here are the two steps that fixed it all: Run sudo apt-get install gf
...