Новые книги

Анатолий Алексеевич Клёсов – с 1979 по 1982 г. профессор химического факультета МГУ, далее, до конца 1980-х – профессор и заведующий лабораторией Института биохимии Академии наук СССР, и на протяжении 12 лет профессор биохимии Гарвардского университета. Область научных интересов: ферментативный катализ; разработка биотехнологии целлюлозы; разработка и промышленное производство полимерных композиционных материалов; ангиогенез раковых опухолей; разработка нового противоракового средства и создание нового типа лекарства против алкоголизма (оба лекарства проходят клинические испытания).

Название книги символично. В начале 1980-х годов 35-летний профессор Анатолий Клёсов был первым советским пользователем Интернета и автором первой статьи о нем в советской печати. Многие материалы, опубликованные в книге, посвящены коллизиям его собственной жизни и деятельности на научном поприще.

Для «юношей, обдумывающих житье», эта книга – очень полезное и увлекательное чтение, особенно те ее страницы, где говорится обо всем, что предшествует большому успеху.
Вы занимаетесь продажами? Тогда вам наверняка знакомо чувство отчаяния из-за непредсказуемого поведения ваших клиентов или ваших собственных действий, оказавшихся ошибочными. Хотя вы, казалось бы, все просчитали.

Дэвид Сэндлер начал карьеру в отделе продаж, будучи разорившимся бизнесменом. Спустя некоторое время он ушел, чтобы… открыть собственную компанию по обучению технике продаж. Очень скоро Сэндлер приобрел широкую известность, а 49 неочевидных, провокационных, но действенных «правил Сэндлера» вошли в арсенал многих успешных продавцов.

Книга адресована всем, кто продает – товары, услуги, мысли, идеи. Постоянно или время от времени.

Относительный против Абсолютного URL

 

Относительный против Абсолютного URL - или, почему не отображаются мои изображения?

Общая проблема для всех программ CGI состоит в том, что программа HTTPD изменяет текущий каталог на тот, в котором находится загружаемый документ. В случае программы CGI, текущий каталог установлен на каталог, где находится программа CGI. Обычно это не проблема, за исключением тех случаев, когда это приводит к относительному URL.

Относительный URL это тот, который полагает что текущий каталог, является также и каталогом, в котором размещен HTML файл . Так, например, если у меня есть URL:

http://my.machine/~rasmus/file.html

Фактический HTML файл мог бы быть:

~rasmus/public_html/file.html

Если внутри файла file.html у меня есть тэг:

<IMG SRC="pic.gif">

В случае если file.html загружен обычным образом то gif файл, как и ожидается, будет в ~rasmus/public_html/pic.gif. Однако, если он загружен через программу CGI с URL подобно:

http://my.machine/cgi-bin/php.cgi/~rasmus/file.html

то HTTPD устанавливает текущий каталог на /cgi-bin (или на тот, на который указывает директива ScriptAlias) и впоследствии, когда страница загружена, pic.gif файл будет ожидаеться, в каталоге: /cgi-bin/pic.gif, что обычно является не желательным эффектом.

Быстрый способ решения этой проблемы состоит в том, чтобы использовать абсолютный URL. Если в вышеупомянутом примере, тэг изображения был:

<IMG SRC="/~rasmus/pic.gif">

то не было бы никакой проблемы. Но дело в том что использование абсолютного URL не всегда желательно, так как это делает страницы менее переносимыми. Очевидный вопрос, который Вы можете сейчас задать: " Почему бы PHP просто не изменяет текущий каталог на правильный? ". Ответ - PHP фактически изменяет текущий каталог на каталог, в котором расположен отображаемый HTML файл. Любые пути файлов, используемые внутри скрипта PHP могут быть относительны. Проблема состоит в том, что тэги, находящиеся вне области действия PHP типа <img> и <href> не будут обрабатываться PHP. Когда они анализируются, PHP уже не активен, и текущий рабочий каталог установлен на каталог, определенный HTTPD.

Решение - состоит в компромиссе. PHP обеспечивает переменную, называемую PATH_DIR. Она всегда содержит часть каталога из имени текущего HTML файла. Если эта переменная PATH_DIR используется в <img> и <href> тэгах, то может быть достигнут эффект относительного URL , хотя для сервера при анализе они будут выглядеть как абсолютный URL. Для нашего вышеприведенного примера , единственое изменение, которое нужно сделать это изменить тэг img на:

<IMG SRC= "<? ECHO $PATH_DIR>/pic.gif">

Используя вышеприведенную запись, Вы можете перемещать файл, содержащий этот тэг куда угодно, и тэг всегда будет ссылаться на файл pic.gif в том же самом каталоге что и исходный HTML файл.

Другой способ решения состоит в том, чтобы использовать традиционный <BASE HREF= ... > тэг в HTML файле.

[Назад] [Содержание] [Вперед]