Назад | Перейти на главную страницу

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

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

Я недавно установил сервер Apache, если определенное программное обеспечение сервера является фактором. Ближайшее, что я нашел, это mod_rewrite, но он явно не делает то, что я хочу.

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

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

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, прежде чем делать это.

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

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

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

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

Здесь есть две проблемы. Похоже, вы хотите создать виртуальный хост на основе имени. Вы настраиваете виртуальный хост на основе имени в 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

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