在Django开发服务器上正常,但在Apache上不行

1 投票
1 回答
758 浏览
提问于 2025-04-15 23:50

我在使用Apache服务器时遇到了一个问题。我们写了代码,如果在表单中输入的URL是有效的,它会显示一个错误信息。当我在Django开发服务器上运行代码时,一切正常,会显示错误信息。但是当我通过Apache运行时,它却不显示错误信息,只是返回到原来的页面。下面是Python和HTML的代码:


objc= {
    "addRecipeBttn": "/project/add",
    "addRecipeUrlBttn": "/project/add/import",
    }

def __showAddRecipe__(request):
    global objc
    #global objc
    if "userid" in request.session:
        objc["ErrorMsgURL"]= ""
        try:
            urlList= request.POST
            URL= str(urlList['url'])
            URL= URL.strip('http://')
            URL= "http://" + URL

            recipe= __addRecipeUrl__(URL)

            if (recipe == 'FailToOpenURL') or (recipe == 'Invalid-website-URL'):
                #request.session["ErrorMsgURL"]= "Kindly check URL, Please enter a valid URL"
                objc["ErrorMsgURL"]= "Kindly check URL, Please enter a valid URL"
                print "here global_context =", objc
                return HttpResponseRedirect("/project/add/import/")
                #return render_to_response('addRecipeUrl.html', objc, context_instance = RequestContext(request))
            else:
                objc["recipe"] = recipe
                return render_to_response('addRecipe.html',
                    objc,
                    context_instance = RequestContext(request))
        except:
            objc["recipe"] = ""
            return render_to_response('addRecipe.html',
                objc,
                context_instance = RequestContext(request))
    else:
        login_redirect['next']= "/project/add/"
        return HttpResponseRedirect("/project/login")



def __showAddRecipeUrl__(request):
    global objc
    if "userid" in request.session:
        return render_to_response('addRecipeUrl.html',
            objc, 
            context_instance = RequestContext(request))
    else:
        login_redirect['next']= "/project/add/import/"
        return HttpResponseRedirect("/project/login")
_

这是HTML文件:

请大家检查一下,如果有人能帮我解决这个问题,我在Django开发服务器上运行是没问题的。

谢谢你们,

Suhail

1 个回答

1

大家好,感谢你们的支持,这个问题已经解决了,我是这样做的。

def showAddRecipe(request):
    #global objc
    if "userid" in request.session:
        objc["ErrorMsgURL"]= ""
        try:
            urlList= request.POST
            URL= str(urlList['url'])
            URL= URL.strip('http://')
            URL= "http://" + URL

            recipe= __addRecipeUrl__(URL)

            if (recipe == 'FailToOpenURL') or (recipe == 'Invalid-website-URL'):
                #request.session["ErrorMsgURL"]= "Kindly check URL, Please enter a valid URL"
                objc["ErrorMsgURL"]= "Kindly check URL, Please enter a valid URL"
                print "here global_context =", objc
                arurl= HttpResponseRedirect("/project/add/import/")
                arurl['ErrorMsgURL']= objc["ErrorMsgURL"]
                return (arurl)
            else:
                objc["recipe"] = recipe
                return render_to_response('addRecipe.html',
                    objc,
                    context_instance = RequestContext(request))
        except:
            objc["recipe"] = ""
            return render_to_response('addRecipe.html',
                objc,
                context_instance = RequestContext(request))
    else:
        login_redirect['next']= "/project/add/"
        return HttpResponseRedirect("/project/login")

撰写回答