Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: PHP Windows и Unix

Сообщения:  [1-10] 

 
 автор: cheops   (23.07.2004 в 21:51)   письмо автору
 
   для: Axxil   (23.07.2004 в 10:18)
 

>Сейчас я тестирую сайт на локальном компьютере под
>управлением Windows XP. Стоит Apache.
Практически все разработчики так и работают. Но сервера работают в основном под управлением UNIX. Проблемы в случае Windows возникают в основном при работе c PHP с DNS, sendmail, правами доступа к файлам в UNIX... так как это не реализовано (sendmail не портирован) в самой операционной системе Windows.

   
 
 автор: cheops   (23.07.2004 в 21:45)   письмо автору
 
   для: Axxil   (23.07.2004 в 11:50)
 

Следует лучше ориентироваться на \n - это нотация UNIX, в Windows строка заканчивается \r\n, поэтому код UNIX легко портируется на платформу Windows, а код ориентированный на \r\n при портировании на UNIX требует переработки...

   
 
 автор: Axxil   (23.07.2004 в 11:50)   письмо автору
 
   для: Кузнецов М.В.   (23.07.2004 в 11:24)
 

У меня и под Windows поддерживаются символы \n и \r\n.
То есть я их использую в своих скриптах и они вроде корректно работают...

   
 
 автор: Кузнецов М.В.   (23.07.2004 в 11:24)   письмо автору
 
   для: Axxil   (23.07.2004 в 10:18)
 

Дизайнер по делу в основном уже ответил. Добавлю лишь пару моментов, что первыми пришли в голову.
Основное различие - в символах конца строки (\n и \r\n) и в ряде функций, которые поддерживаются в *nix, а в Win нет (к примеру, checkdnsrr и н.др). А сказать, что "в *nix это можно сделать, а в win нет" или что "то, что написано под одной системой не будет работать под другой", конечно, нельзя.

   
 
 автор: Варелка   (23.07.2004 в 11:20)   письмо автору
 
   для: Axxil   (23.07.2004 в 10:49)
 

Маленькое уточнение: используя .htacsses переопределить Вы сможете лишь настройки своей директории и низлежащих директорий, причем .htacsses хостера Вы не перекроете. Или администраторы сервера могут запретить его использование.
Итак, лично в моем .htaccess все выглядит примерно вот так:
DirectoryIndex index.php
Устанавливает файл в директории, который грузится по «умолчанию». Обычно – index.html. У меня стоит index.php, поэтому когда вы набираете http://WWW..., грузится файл index.php
CharsetDefault windows-1251
Кодировка, которую сервер выдает браузеру по умолчанию. То есть у меня файлы выдаются в windows-кодировке.
CharsetSourceEnc windows-1251
Кодировка, в которой вы должны закачивать файлы на сервер. У меня опять же стоит windows-1251. Это удобно, когда у тебя операционная система – Win. По умолчанию же стоит koi (koi8-r), что, по-моему, не совсем удобно.
ErrorDocument 404 /index.php
ErrorDocument 401 /index.php
Файлы, которые выдает сервер, когда страница не найдена (404). Например, вы можете прописать, например, файл 404.html, в котором написать, мол, «документ нот фоунд», или вообще сделать что-то вроде этого.
Options -Indexes
Запрещает отображение содержимого директории. Чтобы разрешить, надо написать то же самое, но без «-». Напомню, что разрешать можно выборочно, создав .htaccess там, где нужно, и прописав «Options Indexes».
Потом у меня прописано указание для модуля mod_rewrite для «переписывания» запросов. Переписывание запросов – это, грубо говоря, такая вот фиговинка: человек запрашивает файл, а сервер ему тихо и незаметно выдает файл другой.

   
 
 автор: glsv (Дизайнер)   (23.07.2004 в 11:02)   письмо автору
 
   для: Axxil   (23.07.2004 в 10:49)
 

Ну проблемы связанные с версией сервера, php, отсутствем модулей Вы не решите.

>Вопрос: в этом файле можно переопределять все параметры сервера, или только некоторые?
Многие, но конечно не все.

Это имелось ввиду, что отключана директива register_globals.

   
 
 автор: Axxil   (23.07.2004 в 10:49)   письмо автору
 
   для: Варелка   (23.07.2004 в 10:40)
 

Но как я понимаю обойти многие перечисленные моменты можно использованием файла .htacsses.
Вопрос: в этом файле можно переопределять все параметры сервера, или только некоторые?
>на реальном хостинге могут быть переопределены суперглобалы
Как это?

   
 
 автор: Варелка   (23.07.2004 в 10:40)   письмо автору
 
   для: Axxil   (23.07.2004 в 10:18)
 

К вопросу 1: Действительно, первоначально Apache разрабатывался для *NIX платформ, однако сервер оказался столь удачен, что вскоре мигрировал на другие платформы. Исходники Apache написанны на C доступны, можете перекомпилировать Apache самостоятельно, по функциональности win и *nix версии практически не отличаются.
По второму вопросу: Незначительные проблеммы скорее всего возникнут. Связано это с тем, что на реальном хостинге могут быть переопределены суперглобалы и некоторые специфические функции(например для работы с почтой), то же касается PHP. Может отсутствовать поддержка модулей, которыми Вы привыкли пользоваться на своей машине и т.д.

   
 
 автор: glsv (Дизайнер)   (23.07.2004 в 10:36)   письмо автору
 
   для: Axxil   (23.07.2004 в 10:18)
 

>Аpache как я понял сервер исключительно для Unixа

Вовсе нет. Он давно "портирован" для работы под windows.

Вопрос 2:
Нет, как правило все работает также. Но могут отличаться версии apache, подключаемые модули, библиотеоки и т.п.
Если установлена таже версия апача и один и тот же набор модулей и таже версия php то все будет работать также.

Единственно на что следует обращать внимание - названия файлов. В unix различаются большие и маленькие буквы, а под Win нет.

   
 
 автор: Axxil   (23.07.2004 в 10:18)   письмо автору
 
 

Сейчас я тестирую сайт на локальном компьютере под управлением Windows XP. Стоит Apache.
Вопрос 1.
Аpache как я понял сервер исключительно для Unixа. Тогда как он работает у меня?
Вопрос 2.
При переходе на хостинг который работает под Unixом на мне каким-либо образом отразится то что сайт делался под Windows?

   

Сообщения:  [1-10] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования