Посилання на проекти не працюють на сервері Wamp


85

Я встановлюю сервер Wamp на іншому комп’ютері для запуску середньої бази даних та інтерфейсу користувача. Мені вдалося заблокувати IIS і перенаправити сервер на Localhost: 8080. Але щоразу, коли я намагаюся отримати доступ до своїх проектів з домашньої сторінки localhost, у файлі www; Мене перенаправляють на помилку Сторінка не знайдена.

Коли я наводжу курсор на посилання, каталог завжди відображається "http: // ProjectFolderNameHere /". коли це має бути "http: // LocalHost: 8080 / ProjectFolderNameHere /". Що я можу зробити, щоб посилання працювали належним чином?

Моя машина працює на 64-бітній версії Windows 7 Home Edition, і я вже вимкнув IIS від Microsoft.


Чи можете ви отримати доступ до localhost: 8080 / index.html (за умови, що він є)? Де зберігаються посилання, які показують ці непрацюючі URL-адреси? Хто їх написав? Здається, ці посилання просто написані погано.
Патрік

Ні, але я спробував підключитися до одного зі своїх файлів, все тут встановлено, дякую!
user3638431

Якщо ви знайшли рішення, дайте відповідь на власне запитання для подальшого використання :)
Патрік

Добре Отже, я скористався порадою Патріка, але замість цього набрав localhost: 8080 / ProjectFilename і нарешті отримав доступ до свого проекту. Моя проблема все ще залишається, але я знайшов спосіб її обійти.
user3638431

Ну, я вірю, що ваші посилання (ті, на які ви натискаєте) написані неправильно. Якби ви могли пролити більше світла про те, як дістатися до цих посилань, де вони написані до того, як ви натиснете на них, я міг би допомогти далі
Патрік

Відповіді:


157

Як створити віртуальний хост у WampServer


WAMPServer 3 значно полегшив цей процес!

Ви можете робити майже все, використовуючи утиліту, яка надається як частина WAMPServer.

  • Створіть всередині папку для розміщення вашого project.site. Це може бути в C:\wamp\www\каталозі або в абсолютно окремій папці типу C:\websites.

  • Створіть папку всередині вибраного вами місця, наприклад, C:\websites\project1\wwwпідc:\wamp\www\project1\www

  • Тепер відкрийте localhost wampmanager->localhostі натисніть на посилання Add a Virtual Hostв розділі TOOLS на домашній сторінці.

Ви побачите таку сторінку:

введіть тут опис зображення

  • Заповніть поля, як зазначено в інструкціях над кожним полем

  • Конфігурація віртуального хосту буде створена для вас.

  • Тепер потрібно перезапустити кеш DNS. Ви можете зробити це з меню wampmanager, як це right click wampmanager->Tools->Restart DNS. Кеш DNS буде перезапущено, а потім Apache також буде зупинено та перезапущено. Коли піктограма wampmanager знову стає зеленою, все завершено.

  • Тепер ви повинні створити простий index.phpфайл або встановити свій сайт у створену вище папку.

  • Якщо припустити, що ваш VH був викликаний, project.devви повинні побачити це ім'я в розділі " Віртуальні хости " на домашній сторінці WAMPServer.

  • Ви можете запустити сайт з цього меню, або просто використовувати нове доменне ім'я в адресному рядку EG, project1.devі сайт слід запустити.


Старий механізм WAMPServer 2.5, або якщо ви хочете зробити все це вручну

У WampServer 2.5 і вище відбулася зміна концепції, і для цього є вагома причина!

У WampServer зараз НАСТОЛОВО рекомендується створити віртуальний хост для кожного з ваших проектів, навіть якщо ви тримаєте їх у \wamp\www\subfolderструктурі.

Документація віртуальних хостів

Приклади віртуального хосту

На домашній сторінці WampServer ( \wamp\www\index.php) тепер очікується, що ви створили віртуальний хост для всіх своїх проектів, і тому він буде працювати належним чином, лише якщо ви це зробите.

Історія

Для того, щоб полегшити життя новачкам, які використовують WampServer для вивчення PHP Apache та MySQL, було запропоновано створити підпапки під \wamp\www\папкою.

wamp
  |-- www
       |-- Chapter1
       |-- Chapter2
       |-- etc

Потім ці вкладені папки відображатимуться як посилання на домашній сторінці WampServer у меню під назвою „Ваші проекти”, і ці посилання містять посилання на localhost/subfoldername.

Прийнятно лише для простих навчальних посібників

Це полегшило життя абсолютно новачку і було цілком прийнятним, наприклад, для наступних підручників з вивчення PHP-кодування. Однак він ніколи не був призначений для використання при розробці справжнього веб-сайту, який згодом ви захочете скопіювати на свій розміщений сервер. Насправді, якщо ви використовували цей механізм, це часто спричиняло проблеми, оскільки конфігурація реальних сайтів не відповідала вашій конфігурації розробки.

Проблема реальної розробки веб-сайтів.

Причиною цього є, звичайно, те, що за замовчуванням налаштування DocumentRoot для wamp - це

DocumentRoot "c:/wamp/www/"

незалежно від того, як називалася ваша підпапка. Цей набір, який часто використовував PHP-код, який запитував структуру або ваш сайт, отримував різну інформацію під час запуску на вашій розробці WampServer до тієї, яку він отримав би під час запуску на активному розміщеному сервері, де конфігурація DocumentRoot вказує на папку у верхній частині веб-сайту файлова ієрархія. Цей тип коду існує у багатьох фреймворках та системах управління вмістом, наприклад, WordPress та Joomla тощо.

Наприклад

Скажімо, у нас є проект з назвою project1, який утримується wamp\www\project1і працює неправильно якlocalhost/project1/index.php

Це те, про що повідомляється деякою з відповідних команд PHP:

$_SERVER['HTTP_HOST'] = localhost
$_SERVER['SERVER_NAME'] = localhost
$_SERVER['DOCUMENT_ROOT'] = c:/wamp/www

Тепер, якщо ми правильно визначили цей сайт, використовуючи визначення віртуального хосту, і запустили його, оскільки http://project1результати на сайті розробки WAMPServer збігатимуться з результатами, отриманими в реальному розміщеному середовищі.

$_SERVER['HTTP_HOST'] = project1
$_SERVER['SERVER_NAME'] = project1
$_SERVER['DOCUMENT_ROOT'] = c:/wamp/www/project1

Зараз ця різниця може здатися тривіальною спочатку, але якщо ви хочете використовувати фреймворк, такий як WordPress, або одну із CMS, наприклад Joomla, це може викликати проблеми і перетворює ваш сайт на діючий сервер.

Як створити віртуальний хост у WampServer

Насправді це повинно працювати в основному однаково для будь-якого сервера wndows Apache, з різницею лише в тому, де ви можете знайти конфігураційні файли Apache.

Щоб створити свій перший віртуальний хост в Apache, потрібно виконати 3 кроки, і лише 2, якщо ви його вже визначили.

  1. Створення визначень віртуального хосту
  2. Додайте нове доменне ім’я до файлу HOSTS.
  3. Розкоментуйте рядок у httpd.conf, що містить файл визначення віртуальних хостів.

Крок 1 , Створіть визначення віртуального хосту

Відредагуйте файл, httpd-hosts.confякий називається WampServer

\wamp\bin\apache\apache2.4.9\conf\extra\httpd-vhosts.conf

(Номери версій Apache можуть відрізнятися, затягніть мозок, перш ніж продовжувати)

Якщо ви редагуєте цей файл вперше, видаліть прикладний код за замовчуванням, він не корисний.

Я припускаю, що ми хочемо створити визначення для сайту під назвою project1, який живе

\wamp\www\project1

Дуже важливо, спочатку ми повинні переконатись, що localhost все ще працює, і це перше визначення VHOST, яке ми додамо до цього файлу.

<VirtualHost *:80>
    DocumentRoot "c:/wamp/www"
    ServerName localhost
    ServerAlias localhost
    <Directory  "c:/wamp/www">
        Options Indexes FollowSymLinks
        AllowOverride All
        Require local
    </Directory>
</VirtualHost>

Тепер ми визначаємо наш проект: і це, звичайно, ви робите для кожного свого проекту, починаючи новий.

<VirtualHost *:80>
    DocumentRoot "c:/wamp/www/project1"
    ServerName project1
    <Directory  "c:/wamp/www/project1">
        Options Indexes FollowSymLinks
        AllowOverride All
        Require local
    </Directory>
</VirtualHost>

ПРИМІТКА. Що кожен віртуальний хост DocumentRootвизначає як власний . Є також багато інших параметрів, які ви можете додати до визначення віртуальних хостів, перевірте документацію Apache.

Маленька сторона

Принцип роботи віртуальних хостів в Apache: Перше визначення у цьому файлі також буде веб-сайтом за замовчуванням, тому, якщо доменне ім'я, яке використовується у браузері, не відповідає жодному фактично визначеному віртуально розміщеному домену, то робить localhost першим доменом у файлі це сайт, який завантажується, якщо спроба зламати просто використовує вашу IP-адресу. Тож якщо ми гарантуємо, що безпека Apache для цього домену ЗАВЖДИ ВСТАНОВЛЕНА

Require local

будь-який випадковий злом із зовнішньої адреси отримає помилку і не потрапить у ваш ПК, але якщо ви неправильно напишете домен, вам буде показано домашню сторінку WampServer, оскільки ви знаходитесь на тому самому ПК, що і WampServer, і тому local.

Крок 2 :

Додайте нове доменне ім’я до файлу HOSTS. Тепер нам потрібно додати доменне ім’я, яке ми використовували у визначенні віртуального хосту, до файлу HOSTS, щоб Windows знала, де його знайти. Це схоже на створення запису DNS A, але в цьому випадку це видно лише на цьому конкретному ПК.

Редагувати C:\windows\system32\drivers\etc\hosts

Файл не має розширення і повинен залишатися таким. Слідкуйте за блокнотом, оскільки він може спробувати додати .txtрозширення, якщо у вас немає кращого редактора. Я пропоную вам завантажити Notepad ++, його безкоштовний і дуже хороший редактор.

Крім того, це захищений файл, тому ви повинні редагувати його з правами адміністратора, тому запустіть свій редактор, використовуючи опцію меню Запуск від імені адміністратора .

Файл хостів повинен виглядати так, як тільки ви завершите ці редагування

127.0.0.1 localhost
127.0.0.1 project1

::1 localhost
::1 project1

Зверніть увагу, що тут ви повинні мати визначення адреси зворотної петлі IPV4, 127.0.0.1а також адресу зворотної петлі IPV6, ::1оскільки Apache тепер знає IPV6, і браузер буде використовувати IPV4 або IPV6 або обидва. Я не уявляю, як він вирішує, який використовувати, але він може використовувати будь-який, якщо у вас увімкнено стек IPV6, і більшість віконних ОС роблять з XP SP3.

Тепер ми повинні сказати Windows, щоб оновити кеш свого доменного імені, тому знову запустіть командне вікно, використовуючи опцію меню « Запуск від імені адміністратора », і виконайте наступне.

net stop dnscache
net start dnscache

Це змушує Windows очистити кеш свого імені домену та перезавантажити його, при перезавантаженні він перечитає файл HOSTS, щоб тепер він знав про домен project1.

Крок 3 : Розкоментуйте рядок у httpd.conf, який містить файл визначення віртуальних хостів.

Відредагуйте httpd.conf, скористайтеся меню wampmanager.exe, щоб переконатися, що ви відредагували правильний файл.

Знайдіть цей рядок у httpd.conf

# Virtual hosts
#Include conf/extra/httpd-vhosts.conf

І просто видаліть, #щоб розкоментувати цей рядок.

Щоб активувати цю зміну у вас під управлінням Apache, ми повинні зупинити та перезапустити службу Apache.

wampmanager.exe -> Apache -> Service -> Restart Service

Тепер, якщо піктограма WAMP у системному треї знову не стає ЗЕЛЕНОЮ, це означає, що ви, мабуть, зробили щось не так у \wamp\bin\apache\apache2.4.9\conf\extra\httpd-hosts.confфайлі.

Якщо так, то тут є корисний механізм, щоб з’ясувати, що не так. Він використовує функцію Apache exe (httpd.exe) для перевірки своїх конфігураційних файлів та повідомлення про помилки за іменами файлів та номерами рядків.

Запустіть командне вікно.

cd \wamp\bin\apache\apache2.4.9\bin
httpd -t

Тож виправте помилки та повторіть повторне тестування, поки не отримаєте результат

Syntax OK

Тепер є ще одна річ.

Насправді в системі меню wampmanager є 2 нові пункти меню. Той, що називається "Мої проекти", який увімкнено за замовчуванням. І другий, який називається «Мої віртуальні хости» , який за замовчуванням не активований.

У розділі "Мої проекти" буде перелічено будь-який підкаталог каталогу \ wamp \ www та надано посилання для запуску сайту в цьому підкаталозі. Як я вже говорив раніше, він запускає "project1", а не "localhost / project1", тому, щоб зв’язок працював, ми повинні створити визначення віртуального хосту, щоб це посилання фактично запустило цей сайт у вашому браузері, без визначення віртуального хосту, швидше за все, запустити веб-пошук за назвою сайту як ключовим словом або просто повернути умову не знайдений сайт.

Пункт меню "Мої віртуальні господарі" дещо інший. Він здійснює пошук у файлі, який використовується для визначення віртуальних хостів (до нього ми дійдемо за хвилину), і створює посилання на меню для кожного знайденого параметра ServerName і створює пункт меню для кожного з них. Це може здатися трохи заплутаним, оскільки коли ми створюємо визначення віртуального хосту для підкаталогів папки \ wamp \ www, деякі елементи з'являться як в меню "Мої проекти", так і в меню "Мої віртуальні хости".

Як увімкнути це інше меню "Мої віртуальні хости"?

  • Зробіть резервну копію файлу \ wamp \ wampmanager.tpl, на випадок помилки, це дуже важливий файл.
  • Відредагуйте файл \ wamp \ wampmanager.tpl
  • Знайдіть цей параметр ;WAMPPROJECTSUBMENUу розділі "[Menu.Left]".
  • Додайте цей новий параметр ;WAMPVHOSTSUBMENUдо або після ;WAMPPROJECTSUBMENUпараметра.
  • Збережіть файл.
  • Тепер клацніть правою кнопкою миші піктограму wampmanager та виберіть «Оновити». Якщо це не додає меню, "вийдіть" і перезапустіть wampmanager.

Велика примітка Нове меню з’явиться, лише якщо у вас вже визначені деякі віртуальні хости! Інакше ви не побачите різниці, доки не визначите VHOST.

Тепер, якщо взяти це до логічного розширення

Тепер ви можете повністю перемістити код веб-сайту за межі \wamp\структури папок, просто змінивши параметр DocumentRoot у визначенні VHOST. Так, наприклад, ви можете зробити це:

Створіть папку на вампі-диску або будь-якому іншому диску (остерігайтеся мережевого диска, вони дещо складніші)

D:
MD websites
CD websites
MD example.com
CD example.com
MD www

Тепер ви копіюєте код свого сайту в, або починаєте створювати його в \websites\example.com\wwwпапці та визначаєте свій VHOST таким чином:

<VirtualHost *:80>
    DocumentRoot "d:/websites/example.com/www"
    ServerName example.dev
    ServerAlias www.example.dev
    <Directory  "d:/websites/example.com/www">
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

    php_flag display_errors Off
    php_flag log_errors On

    php_value max_upload_size 40M
    php_value max_execution_time 60
    php_value error_log "d:/wamp/logs/example_com_phperror.log"
</VirtualHost>

Потім додайте цей новий домен розробки до файлу HOSTS:

127.0.0.1 localhost
::1 localhost

127.0.0.1 project1
::1 project1

127.0.0.1 example.dev
::1 example.dev

ПРИМІТКА. Не годиться використовувати ServerName або ServerAlias, що збігається з вашим активним доменним іменем, оскільки якби ми використовували example.com як ServerName, це означало б, що ми більше не зможемо дістатись із цього реального веб-сайту з цього ПК, як би спрямовував example.com на 127.0.0.1, тобто цей ПК, а не в Інтернет.

ТАКОЖ: Зверніть увагу, що я дозволив доступ до цього веб-сайту з Інтернету через визначення VHOST, ця зміна стосуватиметься лише цього веб-сайту, а також жодного іншого. Дуже корисно для того, щоб дозволити клієнту переглядати ваші зміни протягом години або близько того, не копіюючи їх на реальний сервер. Це означає, що нам потрібно відредагувати цей файл вручну, щоб увімкнути та вимкнути цей доступ, а не використовувати пункт меню Помістити в Інтернет / Офлайн на wampmanager.

Також я додав деякі модифікації до конфігурації PHP, знову ж таки, що стосуватиметься лише цього одного сайту. Дуже корисно при обслуговуванні веб-сайту з певними вимогами, на відміну від усіх інших веб-сайтів, які ви підтримуєте. Я гадаю, ми можемо припустити з використаних параметрів, що в ньому десь є давно запущена сторінка, і вона написана дуже погано, і вона не працюватиме з помилками, що відображаються у браузері, не роблячи жахливого безладу на цій сторінці. Повірте, такі сайти існують, і люди все ще хочуть, щоб вони погано підтримувались . Але це означає, що нам потрібно змінити ці параметри лише для цього конкретного сайту, а не глобально для всіх віртуальних сайтів, що працюють на WampServer.


Надзвичайно корисний. Це справді має бути прийнятою відповіддю. Дуже інформативний і, якщо дотримуватись його належним чином, ви зможете працювати приблизно через 10 хвилин. Чудова порада. Хоча один швидкий момент. Я отримав помилку .htaccess: помилкова команда 'RewriteEngine'. Мені довелося встановити галочку rewrite_module в меню Модулі Apache. Хтось міг відповісти, чому мені довелося це зробити?
Кріс

1
Модель rewrite_module @Chris Apache - це код, який насправді забезпечує механізм перезапису. Без нього apache не знає, як зробити переписування URL-адрес. По суті, це не частина ядра apache, а аддон для кращого опису
RiggsFolly

"Редагувати файл httpd-hosts.conf, який для WampServer живе в \ wamp \ bin \ apache \ apache2.4.9 \ conf \ extra \ httpd-hosts.conf" У моїй новій установці wampserver 2.5 цей файл не існує. Якщо ви мали на увазі httpd-vhosts.conf, будь ласка, виправте.
bcsteeve

2
@ starleaf1 Ви бажаєте, щоб це була наша команда! Запустіть localhost/add_vhost.phpна WAMPServer 3, перегляньте цю публікацію на форумі
WAMPServers

1
Поговоримо про поглиблене пояснення! +1 за те, right click wampmanager -> Tools -> Restart DNSщо зробив трюк після додавання нового віртуального хоста і не розуміючи, чому він все ще не працює.
Paesano2000

74

Я вважаю, що це найкраще рішення:

Відкрийте index.php у папці www та встановіть

змінити рядок 30:$suppress_localhost = true;

до $suppress_localhost = false;

Це забезпечить префікс проекту з вашим IP / ім’ям локального хосту


1
Дякую! вирішена проблема, але піктограми / зображення / піктограм піктограм не відображаються blank.git, back.gif, папки.gif не знайдено. будь-яке рішення для цього теж?
Shubham Badal

3
Так, створіть віртуальний хост для кожного сайту, див. Відповідь вище про те, як це зробити.
RiggsFolly

1
Зараз на Wampmanager є (WAMPSERVER 3) простий варіант меню, щоб зробити це, якщо ви справді не розумієте, що це за погана ідея. right click wampmanager->Wamp Settings->Add localhost to urlЄдина хороша річ у цьому - це те, що ви можете потім легко вимкнути його знову, коли зрозумієте, якою поганою ідеєю це було спочатку!
RiggsFolly


11

Для того, щоб отримати доступ до проекту з домашньої сторінки, потрібно спочатку створити віртуальний хост .

Найпростіший спосіб зробити це - скористатися програмою Wamp's Add a Virtual Host Utility.

Просто виконайте такі дії:

  1. Створіть папку всередині каталогу "C: \ wamp \ www \" і дайте їй ім'я, яке ви хочете надати своєму сайту, наприклад. ' мізит '. Тож шлях буде "C: \ wamp \ www \ mysite" .
  2. Тепер відкрийте домашню сторінку localhost у своєму браузері, у меню Інструменти натисніть посилання Додати віртуальний хост .
  3. Введіть ім'я віртуального хоста , це ім'я повинно бути назвою папки, яку ми створили всередині каталогу www, тобто ' mysite '.
  4. Введіть абсолютний шлях віртуального хосту, тобто "C: \ wamp \ www \ mysite \" без лапок, і натисніть кнопку нижче, щоб сказати "Почати створення VirtualHost" .
  5. Створено віртуальний хост, тепер вам потрібно лише перезапустити DNS . Для цього клацніть правою кнопкою миші значок меню лотка сервера вампів, натисніть Інструменти> Перезапустити DNS і нехай значок меню лотка знову стане зеленим.
  6. Все готово! Тепер просто створіть сторінку 'index.php' всередині каталогу "C: \ wamp \ www \ mysite \" . Додайте код у файл index.php , наприклад
    <?php echo "<h1>Hello World</h1>"; ?>

Тепер ви можете отримати доступ до проектів з домашньої сторінки localhost. Просто натисніть посилання на проект, і на екрані з’явиться надрукований текст „Hello World”.


1
Я думаю, що це повинен бути прийнятий awnser, тому що у мене була та сама проблема, і це спрацювало!
Nmaster88,

1
цей останній і ідеальний і працював для мене. Дякую . деякі з наведених вище відповідей є тривалими та застарілими.
Junaid

2
Це має бути поточна прийнята відповідь станом на 18.04.2017. У мене чудово працювало.
rolo

це спрацювало, однак virtualhost для однієї із створених мною папок проекту, скажімо приклад, не змінив приклад під заголовком «Ваші проекти» як посилання .. чому це?
Krys

Якщо у когось виникають проблеми з папками проекту, які не перетворюються з чорного тексту на посилання http, я скористався цим швидким способом, щоб його увімкнути: відкрийте index.php з wamp / www /, скопіюйте рядок у рядку 152: <li> <a href = "'. str_replace ('. conf ',' ', $ file).' /"> '. str_replace ('. conf ',' ', $ file).' </a> </li> і замініть рядок <li>. $ файл. </li> на рядку 359. привіт!
Krys

2

Як виправити пошкоджені посилання на піктограми (blank.gif, text.gif тощо)

На жаль, як вже згадувалося раніше, просто додавання віртуального хосту до вашого проекту не виправляє пошкоджені посилання на піктограми.

Проблема:

WAMP / Apache не змінює посилання на каталог для піктограм на відповідний каталог встановлення. Статично встановлено значення "c: / Apache24 / icons", і 99,9% користувачів встановлення Apache тут не проживають. Особливо з WAMP.

Виправлення:

  1. Знайдіть свій каталог значків Apache! Зазвичай він буде розміщений тут: "c: /wamp/bin/apache/apache2.4.9/icons". Однак ваш пробіг може відрізнятися залежно від вашої установки, і якщо версія Apache інша, то і ваш шлях також буде іншим. \

  2. Відкрийте httpd-autoindex.conf у вашому улюбленому редакторі. Цей файл зазвичай можна знайти тут: "C: \ wamp \ bin \ apache \ apache2.4.9 \ conf \ extra \ httpd-autoindex.conf". Знову ж таки, якщо ваша версія Apache інша, то і цей шлях буде іншим.

  3. Знайдіть це визначення (зазвичай воно знаходиться вгорі файлу):

    Alias /icons/ "c:/Apache24/icons/"
    
    <Directory "c:/Apache24/icons">
    Options Indexes MultiViews
    AllowOverride None
    Require all granted
    </Directory>
    
  4. Замініть каталоги "c: / Apache24 / icons /" на власні. ВАЖЛИВО! У першому посиланні на каталог ПОВИНЕН бути коса скісна риска вперед. У другому посиланні на каталог не повинно бути косої риски. Ваші результати повинні виглядати приблизно так. Знову ж таки, ваш каталог може відрізнятися:

    Alias /icons/ "c:/wamp/bin/apache/apache2.4.9/icons/"
    
    <Directory "c:/wamp/bin/apache/apache2.4.9/icons">
    Options Indexes MultiViews
    AllowOverride None
    Require all granted
    </Directory>
    
  5. Перезапустіть сервер Apache і насолоджуйтесь крутими іконками!


Кращим, більш загальним рішенням є зміна Aliasна Alias /icons/ "icons/"у версіях до WAMPServer 3. У WAMPServer 3 і вище це значення за замовчуванням, і ніяких змін не потрібно.
RiggsFolly

2

Ви можете виконати всі кроки за допомогою @RiggsFolly, це дійсно хороша відповідь, якщо ви не хочете створювати віртуальний хост і хочете використовувати як попередній localhost / приклад / або щось подібне, ви можете використовувати відповідь @Arunu

Але якщо ви все ще стикаєтесь із проблемою, будь ласка, скористайтеся цим методом,

  1. Знайдіть свою папку wamp (наприклад, c: / Wamp /), де ви встановили
  2. Goto Wamp / www /
  3. Відкрийте файл index.php
  4. знайти цей код $projectContents .= '<li><a href="'.($suppress_localhost ? 'http://' : '').$file.'">'.$file.'</a></li>';
  5. змінити його додати localhost після http: // $projectContents .= '<li><a href="'.($suppress_localhost ? 'http://localhost' : '').$file.'">'.$file.'</a></li>';
  6. Перезапустіть сервер Wamp
  7. відкрити localhost див. оновлені посилання

Сподіваюся, ви отримали свою URL-адресу, як попередня версія сервера WAMP.


Не могли б ви запропонувати на мотиці, що ми робимо це для xampp. я пробував усі способи, все ж мій сайт переспрямовує на домашню сторінку xampp
Сушівам


1

Це працює на Wamp 3+.

  • Перейдіть до папки wamp (wamp / або wamp64 /)
  • Відкрийте wampmanager.conf
  • Знайдіть параметр urlAddLocalhost і встановіть його на: urlAddLocalhost = "on"

Не повинно бути необхідності налаштовувати index.php у папці www.


0

Re: Посилання Wampserver LocalHost працюють некоректно
Це станом на червень 2014 року з Wampserver2.5 (можливо, це виправлять у наступних збірках).
Примітка: щоб використовувати LocalHost: 8080 замість LocalHost, просто внесіть відповідні зміни до зазначених нижче редагувань.

Є два аспекти цього випуску -
перший - мати можливість отримати доступ до елементів у розділі «Ваші проекти» на домашній сторінці Wamp localhost.
Другий - мати можливість правильно отримати доступ до елементів, перелічених у списку завдань піктограми Wampserver «Мої проекти».

Щоб виправити перше (щоб мати можливість отримати доступ до елементів у розділі «Ваші проекти» на домашній сторінці Wamp localhost), вам потрібно виконати наступне ...

У файлі index.php, який знаходиться у вашій папці wamp \ www (зазвичай C: \ wamp \ www), потрібно внести 2 зміни.

1) на рядку 30 зміни

  $suppress_localhost = true;

до

  $suppress_localhost = false;

2) на рядку 338 зміни

  $projectContents .= '<li><a href="'.($suppress_localhost ? 'http://' : '').$file.'">'.$file.'</a></li>';

до

  $projectContents .= '<li><a href="'.($suppress_localhost ? 'http://' : 'http://localhost//').$file.'">'.$file.'</a></li>';

Після того, як ви внесли вищевказані редагування - якщо Wampserver працює, просто оновіть сторінку локального хосту, і зміни негайно набувають чинності.

Щоб виправити 2-й пункт (список завдань піктограми Wampserver "Мої проекти"): Вам потрібно відредагувати C: \ wamp \ scripts \ refresh.php

Знайдіть рядок 651 і змініть розділ рядка, який читається

   Parameters: "http://'.$projectContents[$i].'/"; Glyph: 5

до

   Parameters: "http://localhost//'.$projectContents[$i].'/"; Glyph: 5

Після внесення цих 2-х наборів змін, можливо, вам доведеться змусити Wampserver оновити список "Мої проекти", перемкнувши опцію "Помістити в Інтернет / Офлайн" у нижній частині додатка Wamp Icon Tray.


Чудовий чувак, нарешті, щось, що працює! (для обходу порту 80
підключення iis, що

-1
  1. перевірте, чи значок сервера Wamp зелений чи ні, якщо він зелений, то він працює, якщо ні, то вам потрібно виконати ці дії

    a. всі програми слід закрити перед запуском вампа, оскільки в більшості випадків деякі програмні засоби, такі як скайп, приймають той самий порт (80), який використовує вамп.

    b. Ви можете змінити порт Skype: Tool-s-> oprions-> advanced-> з'єднання скасувати використання порта 80

  2. перезапустіть вамп це буде працювати.

ДРУГА справа

  1. коли ви натискаєте на проект в loalhost, він не відображає локальний хост перед назвою проекту, і через це здається, що вамп не працює, тоді вам потрібно лише одне

    . перейдіть до файлу wamp index.php і змініть $ suppress_localhost = false; від $ suppress_localhost = true; або спробуйте навпаки це буде працювати


-1

Перейдіть до вашого каталогу www (якщо ви використовуєте сервер wamp) htdocs (якщо на XAMPP). Відкрийте ваш admin.php і виконайте пошук вмісту проекту / або просто перейдіть безпосередньо до рядка 339 і змініть посилання, вставляючи "місцевий хост до посилання.

Це повинно працювати ,,


-1

Я вважаю, що набагато простіше (ніж прийнята відповідь) створити локальний субдомен за проектом і сказати Apache обслуговувати кілька сайтів за іменами.

Наприклад, припустимо, що ви створили проект під c:/wamp64/www/sites/mysite, щоб мати доступ до нього за адресою http: //mysite.localhost, вам просто потрібно зробити наступне:

1. Скажіть своєму апарату відповідати на різні імена Додати 127.0.0.1 mysite.localhostдоC:\windows\system32\drivers\etc\hosts

2. Промийте кеш DNS Відкрийте командний рядок як адміністратор і введіть net stop dnscache, а потім net start dnscache.

3. Скажіть Apache, де шукати Клацніть на піктограму Вампа в треї, перейдіть до Apache -> httpd.conf і додайте це в кінці:

# Tells Apache to identify which site by name
NameVirtualHost *:80
# Tells Apache to serve the default WAMP Server page to "localhost"
<VirtualHost 127.0.0.1>
ServerName localhost
DocumentRoot "C:/wamp/www"
</VirtualHost> 
# Tells Apache to serve Client 1's pages to "client1.localhost"
# Duplicate and modify this block to add another client
<VirtualHost 127.0.0.1>
# The name to respond to
ServerName client1.localhost
# Folder where the files live
DocumentRoot "C:/wamp64/www/sites/mysite"
# A few helpful settings...
<Directory "C:/wamp64/www/sites/mysite">
allow from all
order allow,deny
# Enables .htaccess files for this site
AllowOverride All
</Directory>
# Apache will look for these two files, in this order, if no file is specified in the URL
DirectoryIndex index.html index.php
</VirtualHost> 

( джерело )

4. Перезапустіть Apache Клацніть на піктограму Вампа в треї, виберіть "перезапустити"

5. Визначте базову URL-адресу Перейдіть до папки проекту, додайте <base href="http://mysite.localhost" />у свій <head>розділ, щоб запобігти пошкодженню / посиланням на корінь сервера.

Особисто я динамічно ввожу цей html-код у свій шаблон, використовуючи PHP (щось на зразок $site_root = (IS_LOCALHOST) ? '<base href="http://mysite.localhost" />' : null;), тому мені не доведеться турбуватись видаленням цього одного разу на виробництві.


-3

Здрастуйте, вам потрібно відкрити index.php з сервера вампів і змінити $ suppress_localhost = false; від $ suppress_localhost = true; тоді ваш вамп буде працювати нормально


2
Є безліч відповідей, які говорять саме про це.
Vael Victus

1
Тоді ви нічого не внесли.
Vael Victus
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.