- Вопрос или проблема
- Установка вашего веб-сайта или тестовых страниц
- Корневая папка сервера:
- Структура папок США
- Общие примечания
- Индексные страницы
- Конкретные страницы
- Изменение доступа
- Локальный доступ
- Локальный и внутрисетевой доступ
- Локальный, внутрисетевой и интернет-доступ
- Ответ или решение
- Теория: Основные принципы доступа к серверу
- Пример: Применение теории на практике
- Применение: Как это поможет вам
Вопрос или проблема
Я использую XAMPP на Windows 7. У меня есть широкополосное Интернет-соединение через беспроводной ADSL2+ модем-роутер Binatone, это соединение с динамическим IP. Я настроил NO-IP на своём компьютере и у меня есть свой домен www.xyz.myftp.org, но я не могу получить доступ к своему серверу Tomcat. Перенаправление ведет на мой IP, и я могу видеть страницу модема, но мой сервер недоступен. Я также настроил файл виртуального хоста сервера httpd-vhosts.conf
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "C:/Users/home-PC/Music/"
ServerName xyz.myftp.org
ServerAlias xyz.myftp.org
ErrorLog "logs/xyz.localhost-error.log"
CustomLog "logs/xyz.localhost-access.log" combined
</VirtualHost>
Начните здесь с порта:
Если порт 80 используется другим сервисом или сервером, ваш сервер не запустится. Перед запуском сервера убедитесь, что другой процесс не использует порт 80. Следующая проверка работает на XP home и XP Pro:
Запустите командную строку: Пуск > Выполнить > введите cmd
В командной строке введите netstat -ano | find "LISTENING" | find ":80"
Это даст список занятых портов. Любой IP, за которым следует :80, означает, что порт 80 используется. Вам доступны следующие варианты:
Отключить (прекратить процесс) мешающий элемент
Путь к папке вашего сервера не должен содержать пробелов. Не используйте “C:\Program Files”, например (что имеет и другие проблемы, такие как ограниченные разрешения и несогласованность при восстановлении системы). Мы рекомендуем устанавливать на корень диска, например, “C:” или “D:” для простоты, но другие местоположения, такие как “C:\test1\appserver”, тоже подходят.
Примечание: Ограничение на символ пробела универсально и касается других WAMP-стеков. Многие приложения, которые будут размещены на сервере, не допускают пробелов в путях. Проблема восстановления системы касается в основном установок отдельных компонентов.
Если текущая установка находится в неправильном пути, ситуацию можно легко исправить, просто переместив каталог вашего сервера в правильное место. Удалять каталог или переустанавливать не нужно. Например, просто переименуйте “D:\bad path\Your Server” в “D:\good_loc\Your Server”.
Кроме того, контроллер предоставляет пункт меню для редактирования или просмотра файла PAC для вашего сервера. Создание виртуального хоста Apache добавляет запись в этот файл. Записи в файле PAC сопоставляют доменные имена с локальным хостом, что позволяет тестировать без необходимости в записи DNS или записи в файле hosts Windows.
Установка вашего веб-сайта или тестовых страниц
Корневая папка сервера:
B) Веб-страницы обслуживаются из папки Your Server\www, которая обычно называется корневой папкой сервера.
Просто скопируйте свой веб-сайт в эту корневую папку.
Корневая папка www уже содержит очень простой веб-сайт, состоящий из единственной страницы index.php, включая связанные с ней папки css и images. Его цель – предоставить тестовую страницу, позволяя
подтвердить, что сервер работает правильно.
Структура папок США
Перед установкой вашего веб-сайта вы можете удалить файл index.php и папки css и images.
Не удаляйте файлы .htaccess и favicon.ico. Они имеют следующие назначения:
- .htaccess – Этот файл является частью безопасности сервера, и его не следует удалять.
- favicon.ico – Это маленький файл изображения, отображаемый в браузере рядом с названием веб-страницы.
Вы можете заменить его своим файлом, но используйте название favicon.ico, чтобы браузеры отображали его правильно.
Примечание: Наличие изображения favicon не является обязательным, но современные браузеры пытаются загрузить это изображение по умолчанию. Если ваш сервер его не содержит, в файл журнала Apache будет записана ошибка.
Общие примечания
Примечание 1: В установках Unix используется корневая папка под названием htdocs. При использовании руководства по установке приложения, ссылающегося на htdocs, используйте вместо этого папку www.
Примечание 2: Структура файлов не статична. Например, запуск Vhost создает новую папку Your Server\vhosts, содержащую корневые папки Vhost.
Имя сервера по умолчанию – localhost. Используйте его, чтобы получить доступ к страницам следующим образом:
Индексные страницы
Для доступа к индексным страницам (таким как index.htm, index.html, index.php) введите следующее в браузере.
http://localhost/
Конкретные страницы
Отобразите конкретную страницу, добавив её имя к имени сервера. Например, если ваша тестовая страница называется test.php, введите следующее в браузере:
http://localhost/test.php
Примечание: Сервер Apache автоматически ищет индексные страницы и отображает первую найденную. Если он не может найти индексную страницу, вместо этого отображается список каталогов.
Изменение доступа
Конфигурация сервера использует файл .htaccess, расположенный в корневой папке Your Server\www. Он предварительно настроен для разрешения только локального доступа. Четыре строки (директивы Apache) управляют доступом к серверу. Эти строки редактируются следующим образом:
Локальный доступ
H) Нажмите переключатель Local Access
В качестве альтернативы отредактируйте файл Your Server\www.htaccess и расскомментируйте (удалите #) четыре строки, как показано:
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
Allow from ::1
Локальный и внутрисетевой доступ
I) Нажмите переключатель Local и Intranet Access
В качестве альтернативы отредактируйте файл Your Server\www.htaccess и расскомментируйте (удалите #) четыре строки, как показано:
Order Deny,Allow
Deny from all
Allow from 127.0.0.1 192.168.0.0/16 172.16.0.0/12 10.0.0.0/8
Allow from ::1
Локальный, внутрисетевой и интернет-доступ
J) Нажмите переключатель Local, Intranet и Internet Access
В качестве альтернативы отредактируйте файл Your Server\www.htaccess и прокомментируйте (добавьте #) четыре строки, как показано:
#Order Deny,Allow
#Deny from all
#Allow from 127.0.0.1
#Allow from ::1
.
Ответ или решение
Для доступа к вашему домашнему серверу под управлением XAMPP Apache Tomcat из любого места, необходимо учесть несколько технических аспектов и шагов настройки. Давайте подробно рассмотрим, как это сделать, учитывая вашу конкретную ситуацию с динамическим IP-адресом и использованием службы NO-IP.
Теория: Основные принципы доступа к серверу
Чтобы обеспечить доступ к серверу из интернет, необходимо решить несколько задач:
-
Настройка DNS: Если у вас динамический IP-адрес, это создает проблему для доступа, так как IP может изменяться. Ваша конфигурация с NO-IP позволяет связывать меняющийся IP с постоянным доменным именем (например, xyz.myftp.org). Это правильным шагом.
-
Проброс портов (Port Forwarding): Для доступа к серверу из интернет необходимо, чтобы запросы из внешнего мира могли пройти через роутер к вашему серверу. Это осуществимо через конфигурацию проброса портов на вашем роутере.
-
Настройка Apache Tomcat и виртуальных хостов: Необходимо убедиться, что Apache Tomcat настроен правильно и, что ваш виртуальный хост настроен корректно на прослушивание внешних запросов.
Пример: Применение теории на практике
Сначала настройте проброс портов на вашем роутере. В административной панели вашего Binatone ADSL2+ роутера найдите раздел, отвечающий за проброс портов, и осуществите следующие шаги:
- Определите IP-адрес вашего компьютера в локальной сети. Например, 192.168.1.2.
- Сделайте этот IP-адрес статическим. Это необходимо, чтобы при каждом включении ваш компьютер получал тот же IP.
- Настройте проброс порта. Поскольку вы используете XAMPP, убедитесь, что порт 80 (и любой другой порт, который использует ваш Tomcat) проброшен на IP-адрес вашего компьютера в локальной сети. Это позволит запросам с внешнего IP-адреса доходить до вашего компьютера.
Следующим шагом идет проверка конфигурации Apache Tomcat:
- Убедитесь, что в файле конфигурации Apache (
httpd-vhosts.conf
) прописаны корректные виртуальные хосты и указаны правильные порты и имена хостов. - Убедитесь, что Tomcat запускается без конфликтов на порте 80. Если этот порт уже занят, возможно, стоит выбрать альтернативный порт.
Применение: Как это поможет вам
Теперь, когда базовые шаги выполнены, попробуем доступиться к вашему серверу с интернет.
- Проверка работы NO-IP: Зайдите на платформу NO-IP и убедитесь, что ваш текущий внешний IP адрес соответствует записи для домена xyz.myftp.org.
- Тестирование работы сервера: Используйте URL http://xyz.myftp.org для доступа к вашему серверу из интернет. Если все настроено правильно, вы должны видеть содержимое вашего сервера вместо админстративной страницы вашего роутера.
- Безопасность доступа: Не забудьте обеспечить безопасность вашего сервера — используйте SSL-сертификаты для шифрования данных и настройте файлы .htaccess для контроля доступа.
Если проблемы продолжаются, возможно, потребуется проверить сетевые ограничения вашего интернет-провайдера или более детально изучить журналы ошибок Apache для диагностики проблем.
В этом случае также настоятельно рекомендуется обратить внимание на обновление операционной системы до более современной версии, так как Windows 7 больше не поддерживается компанией Microsoft и может представлять собой уязвимость.