我正在尝试使用FastCGI在iPage.com上设置django共享主机,但我一直遇到问题。 CGI脚本在浏览器中作为文本而不是执行。下面是.htaccess和fcgi脚本
.htacess
AddHandler fastcgi-script .fcgi
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ cgi-bin/mysite.fcgi/$1 [QSA,L]
以下是fcgi脚本
#!/usr/bin/python
import sys, os
# Add a custom Python path.
sys.path.insert(0, "/home/users/web/b2374/ipg.navtejportfoliocom/django")
# Switch to the directory of your project. (Optional.)
os.chdir("/home/user/myproject")
# Set the DJANGO_SETTINGS_MODULE environment variable.
os.environ['DJANGO_SETTINGS_MODULE'] = "tej.settings"
from django.core.servers.fastcgi import runfastcgi
runfastcgi(method="threaded", daemonize="false")
我做得不对?
答案 0 :(得分:1)
您是否已对该文件启用了执行权限?在FTP客户端中,为用户/组/其他人启用“执行”位。否则apache会认为它只需要提供文件。
如果您拥有Linux shell访问权限,则还可以执行chmod +x mysite.fcgi
。
答案 1 :(得分:0)
你说FastCGI,但你正在使用CGI方法。 FastCGI不是一个更快的CGI实现,它们是两个完全不同的东西。
答案 2 :(得分:0)
Javier是对的,这不行。有关如何使用FastCGI进行部署的文档是here - 您需要安装flup然后在Django中运行FastCGI服务器。