Конфигурация виртуального хоста Apache на MAC с помощью LAMP

У меня проблема с настройкой виртуального хоста Apache на MAC.

Для моей установки я добавил 127.0.0.1 test.wp в свой файл /private/etc/host и включил его, раскомментировав строку Include etc/extra/httpd-vhosts.conf в файле lampp/etc/httpd.conf.

Я также отредактировал свой файл lampp/etc/extra/httpd-vhost.conf с приведенной ниже конфигурацией виртуального хоста;

<VirtualHost *:80>
  ServerName test.wp
  DocumentRoot "/opt/lampp/htdocs/test.wp"
  <Directory "/opt/lampp/htdocs/test.wp">
    Options Indexes FollowSymLinks Includes execCGI
    AllowOverride All
    Require all granted
  </Directory>
</VirtualHost>

Когда я посещаю http://test.wp, когда siteurl и home оба определены как http://test.wp, я вижу It works! вместо сайта WordPress.

С другой стороны, когда я определяю siteurl и home как http://test.wp:8080, я могу получить доступ к сайту WordPress по этому адресу.

Как я могу обслуживать сайт WordPress с адресом http://test.wp на порту 80 по умолчанию?


person Kintamasis    schedule 11.06.2020    source источник
comment
Когда вы устанавливаете URL-адрес сайта на test.wp:8080 и он работает, то у вас должен быть сервер, работающий на порту 8080. Проверьте, на каком порту работает сервер. Затем измените его соответствующим образом. Другое дело, не является ли test.wp папкой, в которой находились все файлы wordpress, или есть еще одна подпапка.   -  person Sagar Bahadur Tamang    schedule 15.06.2020
comment
Укажите свой локальный IP-адрес вместо * в ‹VirtualHost *:80›   -  person A Shah    schedule 16.06.2020
comment
@SagarBahadurTamang на портах XAMPP — localhost: 8080 -> 80 (через SSH) включен. Какие порты должны быть включены? И да, в папке test.wp все файлы wordpress.   -  person Kintamasis    schedule 16.06.2020
comment
@AShah, если я напишу ip вместо * - веб-страница вообще не открывается   -  person Kintamasis    schedule 16.06.2020
comment
Похоже, что XAMPP прослушивает 8080, а 80 (http-порт по умолчанию) обслуживается другим сервером. Возможно ли, что другой веб-сервер (например, Apache) прослушивает порт 80 вашего локального хоста?   -  person ΔO 'delta zero'    schedule 21.06.2020


Ответы (1)


TL; DR

DocumentRoot виртуального хоста Apache, прослушивающего порт 80, указывает на каталог, в котором обслуживается содержимое It works! (скорее всего, в вашей конфигурации Apache по умолчанию).

Вы можете найти и отредактировать его, чтобы сопоставить с каталогом вашего сайта WordPress.

Кроме того, вы можете прокомментировать его и определить свой собственный виртуальный хост в специальном файле конфигурации, а затем включить его в свой основной файл httpd.conf.


Вам необходимо убедиться в следующем:

  1. Ваш проект WordPress должен находиться в вашем каталоге /opt/lampp/htdocs/test.wp.

Фрагмент ниже иллюстрирует указанное выше требование;

# Content of your /opt/lampp/htdocs/test.wp directory

/opt/lampp/htdocs/test.wp/
├── wp-admin/
│   └── [wp-admin directory contents]
├── wp-content/
│   └── [wp-content directory contents]
├── wp-includes/
│   └── [wp-includes directory contents]
├── index.php
├── license.txt
├── readme.html
├── wp-activate.php
├── wp-blog-header.php
├── wp-comments-post.php
├── wp-config-sample.php
├── wp-cron.php
├── wp-links-opml.php
├── wp-load.php
├── wp-login.php
├── wp-mail.php
├── wp-settings.php
├── wp-signup.php
├── wp-trackback.php
└── xmlrpc.php
  1. Apache прослушивает только порт 80 (для ваших целей) с конфигурацией вашего виртуального хоста, как указано в вашем посте выше.

  2. Проверьте свои файлы конфигурации Apache (по умолчанию и особенности) и прокомментируйте все конфигурации виртуального хоста, которые вам не нужны.

  3. Определите URL-адреса WordPress siteurl и home как http://test.wp.

  4. Отредактируйте файл hosts, как показано ниже;

127.0.0.1       localhost
127.0.0.1       test.wp
person nyedidikeke    schedule 21.06.2020