18

Короче говоря, я хотел бы иметь возможность открыть браузер и открыть local.example.com но на самом деле он загружает http://localhost/path/to/example.com/

Я использую Mac OSX 10.5 и не боюсь испачкать руки терминалом :)

Я использую Apache в качестве локального сервера.

1 ответ1

29

Просто для ясности, я основываю это на предположении, что вы действительно хотите, чтобы http://local.example.com загружал буквальную веб-страницу http://localhost/path/to/example.com. Другими словами, это будет работать только для этой машины. Если, с другой стороны, вы пытаетесь обслуживать веб-страницы внешним миром с помощью своего компьютера Mac OS X, тогда это другой вопрос.

Сначала добавьте новую строку в ваш файл /etc/hosts :

127.0.0.1   local.example.com

Вы можете сделать это, выполнив команду sudo nano /etc/hosts , добавьте эту строку в конец, затем сохраните ее, нажав Ctrl-X, Y.

То, как вы на самом деле перенаправляете / псевдоним адреса http://local.example.com на http://localhost/path/to/example.com/, зависит от того, какой веб-сервер вы используете. Предполагая, что вы используете Apache:

Если вы хотите, чтобы в браузере пользователя отображался local.example.com, вы хотите настроить виртуальный хост, а ваш файл httpd.conf должен иметь что-то вроде следующего:

<VirtualHost *:80>
ServerName local.example.com
DocumentRoot /www/path/to/example.com
</VirtualHost>

Если, с другой стороны, вы хотите, чтобы строка адреса веб-браузера изменилась на http://localhost/path/to/example.com/, то вместо этого вы захотите использовать mod_rewrite для создания перенаправления:

RewriteCond %{HTTP_HOST}   !^local\.example\.com [NC]
RewriteCond %{HTTP_HOST}   !^$
RewriteRule ^/?(.*)         http://localhost/path/to/example.com/$1 [L,R,NE]

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .