Как отобразить список «Ваши виртуальные хосты» на домашней странице wamp 2.5

#php #apache #wamp

#php #apache #wamp

Вопрос:

Существует множество инструкций о том, какие настройки следует изменить, чтобы отобразить список виртуальных хостов на домашней странице wamp, однако после проверки index.php в C://wamp/www похоже, здесь не было кода, который показывал бы виртуальные хосты независимо от того, какие настройки были в другом месте. Итак, я добавил в себя некоторый код, чтобы показать этот список, и подумал, что это может помочь другим, которые хотят сделать то же самое.

Для этого в вашем файле httpd-vhosts.conf должны быть записи, подобные следующим

 <VirtualHost *:80>
     DocumentRoot "C:/wamp/www/website_folder_name"
     ServerName Website_Name         #<----------This is the what index.php uses
     <Directory  "C:/wamp/www/website_folder_name">
          AllowOverride All
          Require local
     </Directory>
</VirtualHost>
  

Теперь, в C://wamp/www/index.php внесите следующие изменения:

После этой строки (строка 65) $wampserverVersion = str_replace(‘»‘,»,$result[1]);

Добавить:

 $wampVHostsFile = $server_dir.'bin/apache/apache2.4.9/conf/extra/httpd-vhosts.conf';
if (!is_file($wampVHostsFile))
     die ('Unable to open Virtual Hosts file, please change path in index.php file');
$fp = fopen($wampVHostsFile,'r');
$wampVHostsFileContents = fread ($fp, filesize ($wampVHostsFile));
fclose ($fp);

$vHosts = "";
$result = array(1=>array(1=>786));
while(! empty($result)) {
     preg_match('|ServerName (.*)|',$wampVHostsFileContents,$result, PREG_OFFSET_CAPTURE, $result[1][1]);
     array_key_exists(1, $result) ? $vHosts .= '<li><a href="'.($suppress_localhost ? 'http://' : '').$result[1][0].'">'.$result[1][0].'</a></li>' : null;
}

if (empty($vHosts))
     $vHosts = "<li>No Virtual Hosts</li>n";;
  

Затем прокрутите до конца файла и отредактируйте $pageContents, содержащий html. Я решил, что мне не нужен список псевдонимов, поэтому закомментируйте этот код:

 <div class="third right">
     <h2>{$langues[$langue]['txtAlias']}</h2>
     <ul class="aliases">
          ${aliasContents}          
     </ul>
</div>
  

И замените этим кодом:

 <div class="third right">
     <h2>Your Virtual Hosts</h2>
     <ul class="aliases">
          ${vHosts}
     </ul>
</div>
  

Комментарии:

1. Это не вопрос, и это тоже неправильное решение. Правильное решение см. В Этом документе на форуме WampServer forum.wampserver.com/read.php?2 ,124482 и найдите раздел, озаглавленный » Теперь есть еще одна вещь».

2. Да, я пробовал это, но я все еще не мог получить список виртуальных хостов. В нем нет кода index.php чтобы даже показать виртуальные хосты. Поэтому я изменил код.

Ответ №1:

Как мне включить меню « WAMPServer2.5 Мои виртуальные хосты«?

  • Сделайте резервную копию файла wamp wampmanager.tpl, на случай, если вы допустили ошибку, это очень важный файл.

  • Отредактируйте файл wampwampmanager.tpl

  • Найдите этот параметр ;WAMPPROJECTSUBMENU , он находится в разделе «[Menu.Left]».

  • Добавьте этот новый параметр ;WAMPVHOSTSUBMENU либо до, либо после ;WAMPPROJECTSUBMENU параметра.

  • Сохраните файл.

  • Теперь щелкните левой кнопкой мыши значок wampmanager и выберите Refresh . Если это не добавит меню, «выход» и перезапустите wampmanager.

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

О, и если его @Bollis читает это, отмените все ненужные изменения, которые вы внесли в index.php

Комментарии:

1. Я уже пробовал выше, и это не сработало. У вас есть какие-либо другие предложения @RiggsFolly? Спасибо.

2. Вы также читали Otomatics port в этом потоке, в нем описаны некоторые изменения в четырех других файлах в системе.

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