我正在使用Bluehost将Django应用程序部署到生产服务器,但一直看到我的网站的404页面。问题似乎是我的URL配置。当我在浏览器中输入http://www.example.com/时,我会收到以下内容:
Request URL: http://www.example.com/public_html/
^main/
^admin/
^accounts/
^media/(?P<path>.*)$
etc..
The current URL, public_html/, didn't match any of these
public_html /自动添加到我的URL的末尾我想完全消除public_html /所以我的URL模式将按预期工作。例如
Request URL: http://www.example.com/
然后将重定向到
Request URL: http://www.example.com/main/
如何将默认设置从http://www.example.com/public_html/更改为http://www.example.com/?
我的fcgi文件:
AddHandler fcgid-script .fcgi
RewriteEngine on
RewriteBase /
RewriteRule ^(media/.*)$ - [L]
RewriteRule ^(adminmedia/.*)$ - [L]
RewriteCond %{REQUEST_URI} !(cgi-bin/mysite.fcgi)
RewriteRule ^(.*)$ cgi-bin/mysite.fcgi/$1 [L]
我的.htaccess文件:
#!/home/username/python/bin/python
import sys, os
sys.path.insert(0, "/home/username/python")
sys.path.insert(13, "/home/username/MySite")
os.environ['DJANGO_SETTINGS_MODULE'] = 'MySite.settings'
from django.core.servers.fastcgi import runfastcgi
runfastcgi(method="threaded", daemonize="false")
这可能是我的文件位于我的服务器上的问题吗?如果有人遇到过这种问题,我会非常感谢你提出一些建议。谢谢!
答案 0 :(得分:1)
您必须在urls.py,
中定义以下网址url(r'^$', 'views.home', name='home')
url(r'^main/$', 'views.main', name='main')
然后在views.py
中def home(request):
return HttpResponseRedirect('/main/')
def main(request):
#some code here.