PERL vs CGIПочему у меня при выполеннии скрипта ...
Текущий рейтинг темы: Нет
megaS
Новичок
Всего сообщений: 14 Рейтинг пользователя: 0 Дата регистрации на форуме: 3 нояб. 2003
|
Профиль | Сообщить модератору | ИгнорироватьNEW! Сообщение отправлено: 11 февраля 2004 1:43
Короче прикол такой. У меня есть скрипт поиска. Результаты формируются в CGI а так SSI нельзя использовать в скриптах(по крайней мере мой хостер неразрешает), то я решил зделать так. Вставляю форму посика в главную страницу потом запускается скрипт которые результат поиска сбрасывает в файл. И формирует страницу с редиректом на этот файл. Но вот прикол такой. Если его запускать как CGI скрипт из браузера то файл он несоздает, когда я его запускаю под Shell то все работает отлично. Использую open(FILE "<file.shtml") все правильно елсли нет то создать файл Устанавливал права доступа 755 и 777 все равно неработает.В путик файлу указывал и абсолютный путь("/home/...") даже как то пробывал такое сделать $|=1 закачавал и в бинарном режиме и в Асицишном нифига. Help please.
| | |
4X_Pro
Руководитель Проекта
Настоящий Компьютерщик
Откуда: Москва Всего сообщений: 2994 Рейтинг пользователя: 79 Дата регистрации на форуме: 29 сен. 2001
|
Профиль | Сообщить модератору | ИгнорироватьNEW! Сообщение отправлено: 11 февраля 2004 18:37
А файл именно не создается или не показывается? И что вообще происходит? Советую проверить следующие вещи: 1) правильно ли формируется заголовок переадресации 2) правильно ли открывается файл на запись (должно быть open(FILE,">index.shtml") 3) создаваемый файл помещается в WWW-часть сайта, а не в cgi (иначе он может и не отобразиться) 4) создаваемый файл имеет аттрибуты 644.
--- Каждый человек всегда может найти, чем он может быть полезен окружающим. Проблема только в одном: слишком многие не хотят это искать.
| | |
megaS
Новичок
Всего сообщений: 14 Рейтинг пользователя: 0 Дата регистрации на форуме: 3 нояб. 2003
|
Профиль | Сообщить модератору | ИгнорироватьNEW! Сообщение отправлено: 12 февраля 2004 6:02
Тут прикол не в этом. Прикол в том что если его запускать под shell #perl search.cgi - то он файл создает, а если через браузер то нет.... Права стоят 755(на скрипт), а редирект он делает в обоих случаях. И еще когда он создает файл через шелл то он прекрасно запускается в брайзере.
| | |
4X_Pro
Руководитель Проекта
Настоящий Компьютерщик
Откуда: Москва Всего сообщений: 2994 Рейтинг пользователя: 79 Дата регистрации на форуме: 29 сен. 2001
|
Профиль | Сообщить модератору | ИгнорироватьNEW! Сообщение отправлено: 12 февраля 2004 15:02
Что-то очень странное. А у тебя через броузер скрипт от твоего имени запускается или от какого-нибудь nobody? И еще: ты каталог, где файл будет создан, указываешь с полным путем или как текущий (может быть, он его просто совсем не туда пишет, куда надо)?
--- Каждый человек всегда может найти, чем он может быть полезен окружающим. Проблема только в одном: слишком многие не хотят это искать.
| | |
megaS
Новичок
Всего сообщений: 14 Рейтинг пользователя: 0 Дата регистрации на форуме: 3 нояб. 2003
|
Профиль | Сообщить модератору | ИгнорироватьNEW! Сообщение отправлено: 13 февраля 2004 1:33
На счет пути я делал разные делал так ">/search.shtml" - кажется он писал в папку с HTML документами, делал и в текущую ">search.shtml" писал в папку откудо запускался срипт. А вобще не в этом дело, ведь когда через шелл он создает файл и я его нахожу и запускаю и все норамльно а вот так...... Может тут действительно чтото с правами хотя у скрипта 755(777 тоже пробовал), у папки 777, ну у меня там еще пару скриптов стоит и все работает, а CGI-BIN какие атрибуты иметь должен??? а работаю в системе я под рутом.(Linux Redhat 6.2) и перл нормальный v5 ну и лаьше какието прибамбасы. Блин буду дальше мучится. Но если рассуждать то получается что если скрипт под шелом работает то ошибки в синтаксисе нет... Значит ошибки либо в парвах либо в HTML. Так как редирект он создает значит HTML все нормально. Остаются права и может прикол в режимах закачки(binaary, ASCII). Ну на счет прав вроде тожже все нормал, на счет закачеи пробовал оба..... ?????
| | |
4X_Pro
Руководитель Проекта
Настоящий Компьютерщик
Откуда: Москва Всего сообщений: 2994 Рейтинг пользователя: 79 Дата регистрации на форуме: 29 сен. 2001
|
Профиль | Сообщить модератору | ИгнорироватьNEW! Сообщение отправлено: 13 февраля 2004 14:28
В режимах закачки проблем быть не может (иначе бы оно выпадало с ошибкой 500). У тебя Apache от чьего имени скрпиты выполняет? Скорее всего, не от root... И тогда получается следующая ситуация: под rootом ты имеешь права делать все, что угодно, поэтому файл создается, а при выполнении из броузера скрипт запускается от имени nobody (иногда его web называют) или владельца файла (все зависит от того, как ты там что настроил), который не имеет прав на запись в данный каталог. Могу посоветовать два решения: 1) простое, но кривое - разрешить каталог с HTML-документами на запись всем пользователям, 2) сложное, но правильное, - разобраться с тем, от чьего имени выполняется скрипт, когда используется Apache, и разрешить каталог на запись ему.
--- Каждый человек всегда может найти, чем он может быть полезен окружающим. Проблема только в одном: слишком многие не хотят это искать.
| | |
megaS
Новичок
Всего сообщений: 14 Рейтинг пользователя: 0 Дата регистрации на форуме: 3 нояб. 2003
|
Профиль | Сообщить модератору | ИгнорироватьNEW! Сообщение отправлено: 18 февраля 2004 5:19
А мне вот еще обна мысль пришла, то я проверю, может ли это быть от того что сначало выполняется скрипт но с ошибкой, читает несуществующий файл, а потом выполняется этот скрипт и пэотму так коряво?
| | |
4X_Pro
Руководитель Проекта
Настоящий Компьютерщик
Откуда: Москва Всего сообщений: 2994 Рейтинг пользователя: 79 Дата регистрации на форуме: 29 сен. 2001
|
Профиль | Сообщить модератору | ИгнорироватьNEW! Сообщение отправлено: 18 февраля 2004 7:28
Стоп, я не понял: у тебя же скрипт должен только писать в файл, а считывать его сервер будет. Короче, выложи тут полный текст, тогда и разберемся.
--- Каждый человек всегда может найти, чем он может быть полезен окружающим. Проблема только в одном: слишком многие не хотят это искать.
| | |
megaS
Новичок
Всего сообщений: 14 Рейтинг пользователя: 0 Дата регистрации на форуме: 3 нояб. 2003
|
Профиль | Сообщить модератору | ИгнорироватьNEW! Сообщение отправлено: 20 февраля 2004 3:33
Все заработало родное все, вот только я так и непонял чтоже я такого нового зделал ну и ладно, вывод один непишите скрипты по ночам :-))))))) и тем более не занимайтесь ночью их администрированием ибо во сне видишь не те кнопки :-))) Спасибо за помощь. | | |
Время выполнения скрипта: 0.0611. Количество выполненных запросов: 19, время выполнения запросов 0.0215
|