![]() |
SSI (#include virtual) работает только в корне
Счётчик на странице вызывается так:
<!--#include virtual="/cgi-bin/counttxt.pl?name" --> Но работает, только если страница в корне. Во вложенной папке выдаёт ошибку. В чём трабла? В установках Апача? |
Прежде всего проверь расширение файлов в подкаталогах. По умолчанию на SSI проверяются только файлы с расширением shtml. Если ты хочешь использовать обычные расширения, тогда в корене надо добавить в файл .htaccess следующую строку:
AddHandler server-parsed .html .htm Вариант 2: используй адреса не от корня, а локальные, т.е. ../../cgi-bin/counttxt.pl?name и т.п. |
Я вообще туже страницу копировал в папку, запускал, страница отображается, а на месте скрипта ошибка.
но /cgi-bin/ прописана в одном месте, и она НЕ вложена в корень. |
Цитата:
А вообще, если есть доступ к error.log файлу, посмотри, что в нем выдается - это практически всегда помогает. |
Я имел ввиду корневой каталог домашней страницы.
Сами скрипты находятся совершенно в другой ветке cgi-bin и НЕ вложены в корень сайта. Вот скрипт и выполняется только если вызывается из корня сайта, а из любой из вложенных папок, даже если я копирую туда index.shtml один в один - страница отображается, а скрипт не выполняется. В самом скрипте нет никаких ссылок на место размещения вызываемой его страницы. |
Ты пойми одну вещь, что корень на харде и корень на сайте - это две разные вещи. Корень сайта и папка со скриптами прописываются в конфигурации Апачи. И если ты даещь адрес
/cgi-bin/some.pl и загружаешь его со страницы, лежащей все-равно где в домене domain.ru, то для сервера это равнозначно вызову domain.ru/cgi-bin/some.pl. То же правило действует и для локальных SSI. Я всегда пишу адрес начиная с /cgi-bin И посмотри что выдает error.log файл - сразу станет ясно и не надо гадать. |
Часовой пояс GMT +4, время: 14:23. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.