Я использую плагин jQuery Form для загрузки файлов. Эти файлы отправляются на мой скрипт cherrypy и обратно в мой jQuery, где имя файла добавляется к моей странице. Система работает нормально на локальном хосте. Я использую webfaction как веб-хост, и когда я пытаюсь загрузить файл с помощью плагина формы, я получаю следующую ошибку в журнале ошибок jQuery:jQuery Form Plugin ищет страницу в неправильном месте
2013/11/24 16:41:26 [error] 26628 # 0: * 2912993 open() "/ home/mywebsite/webapps/htdocs/submit" failed (2: Нет такого файла или каталога), клиент: 5.100.131.14, сервер: mywebsite.webfactional.com, запрос: "POST/отправьте HTTP/1.1 ", host:" mywebsite.webfactional.com ", referrer:" http://mywebsite.webfactional.com/freelinreg "
Странно, что он пытается открыть файл отправки на странице«/home/mywebsite/webapps/htdocs/submit », где он не exisit. Обычно то, что, по-видимому, делает вишня, основано на моем коде ниже, заключается в том, что make/submit 'доступно на «http://mywebsite.webfactional.com/freelinreg/submit» или «localhost: 8080/submit» при запуске моего компьютера.
Есть ли какой-нибудь момент, чтобы указать плагин jQuery Form для поиска '/ submit' на «http://mywebsite.webfactional.com/freelinreg/submit», а не на «/ home/mywebsite/webapps/htdocs/submit»?
класс Root (объект):
@cherrypy.expose
def index(self)
return open('/home/joestox/webapps/freelinreg_static/index.html')
@cherrypy.expose
def submit(self, myfile):
cherrypy.session['myfile'] = myfile
data_name = myfile.filename
#Send back to JQuery with Ajax
#Put in JSON form
data_name= json.dumps(dict(title = data_name))
cherrypy.response.headers['Content-Type'] = 'application/json'
return data_name
HTML:
<!DOCTYPE html>
<html>
<head>
<script type='text/javascript' src='freelinreg_static/google.js'></script>
<script type='text/javascript' src='freelinreg_static/frontend.js'></script>
<script type='text/javascript' src='freelinreg_static/malsup.js'></script>
</head>
<body>
<form id="dataform" action="submit" method="post" enctype="multipart/form-data">
<input type="file" name="myfile" id="myFile"/>
<input type="submit" id="data_submit" value="Continue"/>
</form>
</body>
</html>
JQuery (frontend.js):
$(document).ready(function() {
(function() {
$('#dataform').ajaxForm({
success: function (data) {
var $a_var = data['title'];
$('body').append($a_var);
}
});
return false;
})();
});
Кажется, что вы смешиваете локальные каналы и веб-маршруты. У вас есть правильные настройки окружения TMP/TEMP? Можете ли вы предоставить дамп ошибок Python (вы можете запустить его в консоли для этого)? – jwalker