Изменить префикс веб-сайта? (IE: www.example.com/bob_11 -> bob_11.example.com)

Некоторые сайты имеют переменные префиксы. Например: www.example.com/bob_11 представлен как bob_11.example.com. Как я могу это сделать? Я предполагаю, что это подкаталог, но не могу найти ничего, объясняющего, как обращаться с ним как таковым.

Я недавно настроил сервер Apache, если определенное программное обеспечение сервера является фактором. Самым близким, что я нашел, является mod_rewrite, но он явно не выполняет то, что я хочу.

Поиск помощи по этому вопросу был непростым делом, так как я почти уверен, что "префикс" - это не то слово, которое я описываю. Помимо того, как это сделать, как называется процесс, который я описываю?

4 ответа

Вы ищете, чтобы создать поддомен вашего сайта. Вам нужно будет определить виртуальный хост в Apache и определить новую папку для вашего нового субдомена. Затем вы можете использовать mod_rewrite или даже перенаправление, чтобы переместить пользователя на ваш поддомен, когда он нажмет www.example.com/bob_11.

Вам также понадобятся записи DNS для корректного отображения URL в браузерах посетителей.

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

http://httpd.apache.org/docs/2.2/vhosts/examples.html

Лучше всего перейти на панель регистрации домена и добавить туда поддомен bob_11.example.com указывая с A record на IP-адрес вашего сервера...

Затем на сервере используйте командную строку, чтобы найти httpd.conf:

Пытаться:

 find / -name httpd.conf
  • скорее всего, вам понадобятся права доступа root для поиска из / dir, поэтому поставьте sudo перед вышеприведенной командой. Или войдите в систему как root, прежде чем делать это.

А там настройте виртуальный хост согласно руководству по ссылке выше.

Перезапустите apache после сохранения httpd.conf!

Вы хотите создать поддомен. Многие современные хостинг-провайдеры будут рассматривать это как часть своей панели бэкэнда / управления, поэтому точный ответ будет зависеть от вашего хостинг-провайдера.

Здесь есть два вопроса. Похоже, вы хотите создать виртуальный хост на основе имени. Вы настраиваете виртуальный хост на основе имени в Apache.

http://httpd.apache.org/docs/current/vhosts/name-based.html

Таким образом, вы бы что-то вроде:

NameVirtualHost *:80  (Note NameVirtualHost is deprecated in Apache 2.4 which I've linked above)

<VirtualHost *:80>
ServerName bob_11.example.com
DocumentRoot /www/bob_11
</VirtualHost>

Вторая проблема заключается в том, как настроить DNS для распознавания имени или того, что вы назвали префиксом. Самый простой способ - добавить запись CNAME, которая содержит желаемое имя и указывает на существующее имя www в качестве псевдонима.

Ваш DNS должен быть настроен так:

bob_11.example.com.             CNAME   www.example.com.
www.example.com.                 A       192.168.1.2
Другие вопросы по тегам