Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Мануал по установке и настройке сервера.rtf
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
7.62 Mб
Скачать

Короткие теги php.

Классически начало php скрипта обозначается <?php, но можно для упрощения начинать скрипт просто <?, вот этот вариант и называется короткий тег.

По умолчанию обычно короткие теги отключены в php, но большая часть программистов используют короткие теги в своих скриптах, поэтому лучше включить короткие теги, чтобы не было проблем.

Для включения находим

short_open_tag = off

и меняем значение на on

Если short_open_tag не нашли, добавьте сами.

Запрет на выход за пределы директории.

Если php запущен под windows, то по умолчанию из любого php скрипта можно получить доступ к любому файлу на компьютере.

Стандартными средствами windows нельзя ограничить доступ как в unix. По этой причине, очень давно я случайно очистил весь свой диск С:/ , естественно потеряв всю систему.

Можно ограничить доступ php скриптов к директориям и файлам через php.ini.

Находите параметр

open_basedir =

Возможно он будет закрыт комментарием (;), тогда удалите комментарий и пропишите путь, выше которого php скрипты не смогут получить доступ.

Например

open_basedir =C:/xampp/

Если вы устанавливали сервер с помощью xampp, то весь сервер у вас находится в одной папке, поэтому можно разрешить доступ ко всей папке сервера, либо можете ограничить только папкой, в которой лежат скрипты.

Слэш в конце обязателен, если его не поставить (C:/xampp), то в данном примере доступ будет разрешен и к папке xampp и к папке xamppaswe, то есть к любой папке которая начинается на xampp.

Этот параметр можно будет менять в виртуальных хостах, назначая для каждого сайта свой каталог доступа.

Подробнее об этом читайте основные настройки apache.

Глобальные переменные register globals

Обязательно проверьте, чтобы

register_globals = Off

обязательно был off, никогда не ставьте on, за исключением тех случаев, когда этого требуют надежные скрипты.

Этот параметр отключает копирование глобальных переменных (POST, GET, SESSION и т.д.) в обычные.

То есть, если есть переменная $_GET['webi'], то при включенном параметре автоматически создается еще и обычная переменная $webi, содержащая данные из $_GET['webi'].

Но некоторые считают, что при отключении register globals глобальные переменные совсем отключаются и они не смогут получить доступ к POST, GET и т.д.

Поэтому напоминаю, что отключается только копирование глобальных переменных в обычные.

Время.

С помощью функций даты и времени проверьте какое время возвращает PHP.

Скорее всего оно будет не вашей временной зоны, так как по умолчанию время в PHP устанавливается в UTC(не GMT).

Если время на сервере для вас имеет значение, тогда в php.ini находите и редактируйте параметр

date.timezone

В этом параметре укажите необходимую вам временную зону, например у меня стоит зона Новосибирская

date.timezone = "Asia/Novosibirsk"

Для Москвы это выглядит так

date.timezone = "Europe/Moscow"

Узнать как правильно пишется ваша временная зона можно так

<? print_r(DateTimeZone::listIdentifiers()); ?>

Это выдаст полный список временных зон.

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

Но пока еще сервер не готов к запуску, читайте следующие части

Минимальная настройка mysql для первого запуска

Минимальная настройка mysql, необходимая для запуска на рабочем сервере windows - apache.

Для настройки mysql понадобится файл my.cnf, либо my.ini, у всех по разному.

Если установку делали с помощью xampp, то этот файл должен лежать в папке

/xampp/mysql/bin/

В настройках по умолчанию в mysql нет дыр в безопасности, поэтому расскажу лишь о некоторых не комфортных моментах.

Время в mysql.

После установки mysql с помощью xampp может обнаружиться, что сервер mysql работает с временем UTC или другим часовым поясом, не подходящим вам.

Изменить временную зону можно через файл настроек.

Найдите строку

default-time-zone

И в параметрах укажите необходимую зону.

Например московское время выглядит так

default-time-zone = "Europe/Moscow"

Если не знаете как правильно пишется нужная вам временная зона, можете просмотреть список зон в базе mysql(это название базы) в таблице time_zone_name.

Минимальная настройка phpmyadmin для открытого запуска

Если вы ставили сервер с помощью xampp, то в комплекте сразу имеется phpmyadmin.

Попасть в него можно так http://localhost/phpmyadmin или через любой ваш прописанный домен

http://домен/phpmyadmin

Если устанавливали phpmyadmin отдельно, то путь к нему возможно будет другой, вам виднее куда ставили.

Доступ в phpmyadmin осуществляется через пользователей базы данных, используя их логины и пароли. Сразу после установки в базе будет создан пользователь root без пароля, имеющий полный административный доступ к базе данных.

По умолчанию phpmyadmin настроен на работу именно с пользователем root без пароля, поэтому вход в phpmyadmin происходит без ввода логина и пароля с максимальными правами.

Естественно, в первую очередь нужно установить пароль пользователю root.

Заходите в phpmyadmin и нажимайте на вкладку "Привилегии".

Тут вы должны увидеть минимум двух пользователей "pma" и "root"

Примерно так

Пользователь pma необходим для phpmyadmin для его внутренних административных целей.

По умолчанию он тоже без пароля, поэтому пользователю pma тоже нужно поставить пароль.

Именно с пользователя pma лучше и начать.

Нажимайте на иконку редактирования привилегий возле пользователя pma

Когда войдете в редактирование привилегий пользователя, никакие галочки не трогайте, все оставьте как есть, только добавьте пароль и нажмите ОК

Теперь снова вернитесь к пользователям в Привелегии и точно так же смените пароль пользователю root.

Обратите внимание, после того как вы установите пароль пользователю root вы больше не сможете войти в phpmyadmin без пароля, доступ сразу же будет закрыт.

Поэтому запомните пароль.

Теперь начинаем настраивать phpmyadmin.

Редактировать настройки phpmyadmin будем с помощью файла config.inc.php, который находится в папке с установленным phpmyadmin.

Я расскажу о наиболее важных настройках, если каких-то параметров вы не найдете в файле настроек, можете добавить их.

Начнем с авторизации и входа.

В конфиге за это дело отвечают следующие переменные

$cfg['Servers'][$i]['auth_type'] = 'config';

$cfg['Servers'][$i]['user'] = 'root';

$cfg['Servers'][$i]['password'] = '';

$cfg['Servers'][$i]['AllowNoPassword'] = true;

$cfg['Servers'][$i]['auth_type']

Это тип авторизации.

Если значение 'cookie', то логин и пароль будет запрашиваться при входе в phpmyadmin.

Если значение 'config', то логин и пароль для доступа к базе нужно прописать в этом конфиге в переменных

$cfg['Servers'][$i]['user']

$cfg['Servers'][$i]['password']

и входить можно будет не указывая логин и пароль.

При авторизации 'cookie' прописывать логин и пароль здесь не нужно.

$cfg['Servers'][$i]['AllowNoPassword'] = true;

Разрешение входить под пользователями без установленных паролей.

Эту переменную лучше установить в false, тем самым запретить входить под пользователями без установленных паролей.

Дальше нужно прописать пароль для пользователя pma, чтобы phpmyadmin мог соединяться со своей базой

$cfg['Servers'][$i]['controluser'] = 'pma';

$cfg['Servers'][$i]['controlpass'] = '';

Это переменные логин и пароль для pma. Пропишите в controlpass пароль, который указали.

$cfg['blowfish_secret'] = 'xampp';

Это любая произвольная фраза-ключ для шифрования паролей в куках.

Желательно изменить стандартную фразу.

Если этой переменной у вас нет, добавьте ее.

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

Настройка FTP сервера на windows

Для организации FTP сервера на windows советую воспользоваться FileZilla Server.

Это очень простой и бесплатный FTP сервер, имеющий все необходимые возможности.

Если у вас не установлен FileZilla Server, можете скачать его здесь. Во время установки лучше оставить все предлагаемые параметры по умолчанию, разве что, пути для установки программы укажите свои.

После установки должен запуститься интерфейс сервера, если этого не произошло, то для доступа к интерфейсу запускайте FileZilla Server Interface.exe.

Если вы устанавливали веб сервер с помощью xampp, то FileZilla Server у вас уже должен быть установлен.

Запустить его интерфейс можно через панель xampp(ярлыком или xampp-control.exe).

Остановите FileZilla, если он запущен.

Затем отметьте галочку Svc возле FileZilla, если она еще не отмечена.

Запустите FileZilla и входите в этот сервис с помощью кнопки admin.

Вы должны увидеть такое окно.

Редактирование юзеров (edit/users)

В этом окне можно добавлять и редактировать пользователей FTP.

По умолчанию здесь могут быть какие то уже созданные юзеры, в моем примере видно anonymous и newuser.

Эти юзеры добавлены для демонстрации, их лучше сразу удалить.

После удаления этих демонстрационных юзеров можете добавлять новых пользователей.

Добавление очень простое, нажали на копку ADD, появилось окошко, в него вписали имя пользователя и нажали OK.

Имя нового пользователя появится в списке.

Далее можно редактировать этого пользователя, отметив его мышкой.

С помощью галочки Enable account можно включать/отключать пользователя.

Галочка Password включает возможность установить пароль для пользователя, в противном случае этот пользователь будет входить без пароля как анонимный.

Теперь нужно указать к какой папке будет иметь доступ этот юзер.

Для этого в левом меню войдите в Shared folders и добавьте нужные директории.

После добавления директорий отметьте уровень доступа к ним. Для этого здесь есть галочки.

Разрешения для файлов

Read (разрешить скачивание из этой папки)

Write (разрешить загрузку файлов в эту папку)

Delete (разрешить удаление файлов)

Append (разрешить догружать файлы, дописывать)

Разрешения для директории

Create (разрешить загружать папки)

Delete (разрешить удалять папки)

List (разрешить показывать содержимое папки)

+Subdirs (доступ к вложенным подкаталогам)

Еще в левом меню есть лимит скорости. Можно для каждого юзера установить скорость скачивания и закачивания.

На этом можно закончить знакомство с созданием пользователей.

Теперь закрывайте окно редактирования юзеров и переходите в настройки (edit/settings).

Пассивный режим (edit/settings - Passive mode settinqs)

Пассивный режим для FTP требуется если на стороне клиента нет возможности для прямого соединения. Например, при коннекте к ftp через браузер или если закрыты порты с помощью фаервола.

Обычно, никаких дополнительных настроек для пассивного режима делать не нужно, достаточно оставить эти настройки по умолчанию, но если у вас имеется фаерволл или ваш компьютер находится за маршрутизатором, то для работы сервера в пассивном режиме нужно будет указать ваш локальный ip (если используете маршрутизатор) и указать диапазон портов, по которым будет разрешено коннектиться в пассивном режиме. Эти порты нужно будет перенаправить в маршрутизаторе и открыть в фаерволе.

В некоторых случаях настроить пассивный режим находясь за роутером (маршрутизатором) очень сложно и зачастую помогает случайность. Не все роутеры настраиваются одинаково стабильно, например мой D-link 604 настроился только после нескольких часов танцев с бубнами, не смотря на то, что все настройки очевидны.

А вот DIR-300 удалось сразу настроить, хотя настройки у этих маршрутизаторов практически одинаковые.

Так что, экспериментируйте!

Защита от подбора пароля (edit/settings - Autoban)

Это полезная опция блокировки ip в случае попыток подбора пароля к ftp.

Включайте галочку Enable automatic bans.

Укажите сколько раз можно ошибиться одному IP в течении часа.

И далее на сколько часов блокируется этот IP.

Очень советую использовать эту функцию, так как роботы обязательно будут подбирать пароли к вашему FTP, а с автоматической блокировкой у них будет очень мало шансов.

Все остальные настройки можно не трогать и оставить все как есть, все остальное на работу сервера не влияет.

Если у вас есть желание и понимание этих настроек можете пробежаться по настройкам(их не много), изменить приветственное сообщение, включить логи, настроить компрессию и т.д.

Кто понимает эти настройки, тому ничего объяснять не нужно, а если вы их не знаете, то менять вам их не стоит, так как на общей работе сервера они не отразятся.

Проблемы с этим FTP сервером.

FileZilla отдает всю информацию в юникоде.

Это конечно не проблема, но иногда доставляет неудобства.

Все современные ftp клиенты умеют работать с юникодом, но есть не большая проблема с самым популярным файловым менеджером Total Commander.

Этот файловый менеджер уже много версий назад собрал в себе все возможные функции и по мнению многих пользователей все последующие версии уже не имеют больших изменений и многие пользуются старыми версиями.

А вот поддержка юникода по ftp в тотале появилась не так давно.

Еще в версии 7.01 ее не было, а в 7.50 уже есть.

По этой причине у обладателей старого тотала будут проблемы с русскими именами файлов (англиские имена отображает без проблем).

В самом сервере нет возможности отключать юникод.

Сам я пользуюсь этим сервером уже достаточно долго и каких-то других проблем не замечал.

Устанавливаем или же настраиваем Tomcat в Xampp под Windows

Нельзя сказать, чтобы среда разработки Java была сильно популярна на платформе Windows. В большинстве случаем на рынке хостинга присутствуют именно Unix решения с поддержкой Java. Но, тем не менее, разрабатываясь как мультиплатформенный язык программирования, Java ни чуть не хуже работает и на Windows платформе, что безусловно может использоваться как для отладки, так и для хостинга приложений на этой платформа. Дополнительную популярность на платформе Windows язык Java, как это ни странно, приобрел после выхода конкурирующего продукта непосредственно от разработчика Windows. Агрессивная политика Microsoft заставила задуматься многих специалистов о разработке более переносимого кода, который "в случае чего" можно будет портировать на Unix платформу с меньшими потерями.

Я не буду здесь касаться проблем выбора языка разработки, равно как и преимуществ одной платформы над другой. Будем считать, что вам просто понадобилась именно такая конфигурация: Windows+Tomcat.

Подготовительный этап

Разумеется любая настройка сервера начинается с подбора необходимых программных компонент. В нашем случае, все компоненты, кроме собственно ОС являются бесплатными или условно-бесплатными и могут быть успешно скачены из Интерента.

И так нам очевидно потребуется: