IIS 7 中的 Python 中的 Asp 给出 HTTP/1.1 500 服务器错误
问题描述
我不是以管理员身份而是以用户身份使用 Windows 7 和 IIS 7.我在 IIS 7 中的应用程序开发功能中安装了 asp 模块和 cgi 模块.我的简单经典 asp 页面正在运行:
I am using Windows 7 and IIS 7 not as administrator but as a user. I have installed asp module and cgi module in IIS 7 in application development feature. My simple classic asp page is working which is :
<%response.write("Hello World")%>
我在 python 中的 cgi 正在工作,这是:
My cgi in python is working which is :
print "Content-Type: text/plain;charset=utf-8"
print "Hello World!"
但是当我在 asp 页面中使用 python 脚本时,它显示 HTTP/1.1 500 服务器错误我使用的代码是:
But when I am using python script inside asp page it is showing HTTP/1.1 500 server error The code I am using is :
<%@Language=Python%>
<%
x="Hello"
response.write(x)
%>
我已经在网上搜索了 4 天,但没有得到任何运气.我在身份验证中启用了匿名身份验证",取消注册并为 ASP 注册了 pyscript.py,为 python 提供了 IUSR 并给予 IUSR 完全控制,启用启用 32 位应用程序"为 True 没有工作.
I have searched the net for 4 days but didnt get any luck. I enabled "Anonymous Authentication" in Authentication ,Unregistered and registered the pyscript.py for ASP, Provided python with IUSR and gave IUSR full control,Enabled "Enable-32 Bit Application" to True didnt worked.
解决方案
终于找到了解决办法.
要执行的步骤是
向 ASP 注册 Python:
Register Python with ASP:
- 打开命令提示符
- 转到
{python_installation_dir}Libsite-packageswin32comextaxscriptclient
- 运行
python pyscript.py
为 IIS7 启用 32 位应用程序
Enable 32-bit application for IIS7
- 转到 IIS7
- 右键单击您网站的应用程序池
- 选择高级设置
- 在常规下,将启用 32 位应用程序设置为 True
- Go to IIS7
- Right click on your site's application pool
- Select Advanced Settings
- Under General, set Enable 32-Bit Application to True
将 IIS_IUSRS、IUSR 或 USERS 添加到您的虚拟目录:
Add IIS_IUSRS, IUSR or USERS to your virtual directory:
- 右击目录
- 点击编辑权限
- 选择安全标签.
- 至少授予帐户读取权限.
相关文章