javascript — Yii, разрешающий URL как контроллер / действие вместо выполнения базового скрипта

Код, который я сейчас поддерживаю, использует Yii v1.0 и Uber Uploader для загрузки файлов. Это делается путем вызова perl-скрипта uber uploaders из jquery.post внутри js-файла. Я использую виртуальный сервер Godaddy Linux с PHP версии 5.3.28

скрипт perl наконец вызывается в строке ubr_file_upload.js:

jQuery.post(this.path_to_link_script, data, function(){}, "script");

где path_to_link_script это /scgi-bin/ubr_upload.pl, Это происходит внутри функции JS под названием linkUpload который вызывается из формы загрузки в fileUpload.php при нажатии кнопки отправки:

<form id="<?php echo $PARMS[$i]['id'];?>
_ubr_upload_form" name="<?php echo $PARMS[$i]['id'];?>
_ubr_upload_form" method="post" enctype="multipart/form-data"action="#" onSubmit="return UU<?php echo $i?>.linkUpload();">`

Который отображается с помощью виджета yii в:

$this->render('fileUpload',array('PARMS'=>$this->_uberSettings->PARMS,
'debug_ajax'=>$this->_uberSettings->INI['debug_ajax']));`

Когда пользователи переходят на форму, выбирают файл и нажимают кнопку «загрузить», в консоли chrome появляется следующая ошибка:

POST https://www.example.com/scgi-bin/ubr_upload.pl?upload_id=b5XXXXXXXXXbcc0
404 (CHttpException)

(Xs добавлены для сохранения конфиденциальности)

Затем, проверяя вкладку Сеть, я вижу следующий сбой вызова после вызова при нажатии кнопки отправки:

https://www.example.com/scgi-bin/ubr_upload.pl?upload_id=b5XXXXXXXXXbcc0

Ответ, который он получает, следующий:

Page Not Found

Unable to resolve the request "scgi-bin/ubr_upload.pl".

The requested URL was not found on this server. If you entered the URL manually please check your spelling and try again.

If you think this is a server error, please contact [email protected].

Похоже, что Yii пытается решить URL вместо выполнения сценария.

Если я, однако, посетить тот же URL вручную (https://www.example.com/scgi-bin/ubr_upload.pl?upload_id=b5XXXXXXXXXbcc0), он выполняет скрипт perl правильно.

Я застрял. Полностью. Любая помощь будет принята с благодарностью.

1

Решение

В конце концов проблема была в виджете Uber Uploader EuberUploaderWidget. Виджет повторно объявлял TEMP_DIR с $this->_uberSettings->TEMP_DIR = ... используя жестко заданный путь (который, конечно, был неправильным после перемещения всей установки в новую папку).
Я не зарегистрировался там, так как я уже изменил его в модели, плюс Uber Uploader не дал любой ошибка, которая привела бы меня к этому направлению, это было совершенно случайно, что мы закончили тем, что попробовали это.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]