10.11.2020, 16:06
|
Новичок на форуме
|
|
Регистрация: 10.11.2020
Сообщений: 9
|
|
JS (AJAX-запрос) в PHP и обратно, и все это на localhost
Здравствуйте.
WEB программирую постольку-поскольку. Использую JS и PHP.
В приниципе, особых вопросов по языкам нет. Вопрос состоит в их общении друг с другом через AJAX на localhost.
Как делаю по настоящий момент:
- пишу JS-код;
- пишу PHP-код (для отладки использую простейший локальный сервер Apache2, т.е. имитирую получение запроса с клиентской стороны в предусмотренном формате, далее поднимаю скрипт, а echo - оно и в Африке echo);
- далее выкладываю все это дело на хостинг, в PHP-скрипте, разумеется вместо имитации запроса ставлю, как и положено, $_REQUEST[...] и только с этого момента начинаю проверять их стыковку.
Все замечательно работает, и входит, и выходит.
Умных мыслей сейчас много, поэтому решил начать все делать по уму, т.е. выполнять отладку сайта сразу здесь на месте, т.е. на локальном сервере localhost.
И вот здесь затык. Уверен, не оригинален, и, возможно, этот вопрос уже где-нибудь здесь на форуме обсуждался. Не нашел. Выбрал javascript.ru, потому что хочу, чтобы именно на локальном хосте, JavaScript, через XMLHttpRequest или fetch - это неважно, отправлял запрос в PHP, который, в свою очередь, выполнялся бы и выдавал результат обратно.
Поскольку, все работает на хостинге, но не работает на localhost, значит я не могу нормально настроить локальный сервер.
Что пробовал:
- запускал http-server из Node.JS (результат: мои GET-запросы получают статус 200 OK, однако response = null). Соответственно в адресной строке браузера localhost:8080, например;
- запускал локальный сервер через python (статус 200 OK, response = null). В адресной строке браузера localhost:8080, например;
- пробовал встроенный локальный сервер php -S (там, как то, вообще тишина).
Если кому не жалко, подкиньте правильную мысль. Уперся, и что-то даже не знаю куда идти. А продолжать писать по старому, как то не очень, тем более хочется всякую ленивую подгрузку делать, и все такое. Тут нужна постоянная связка.
Заранее благодарен.
Последний раз редактировалось maratus, 10.11.2020 в 16:36.
|
|
10.11.2020, 16:16
|
Профессор
|
|
Регистрация: 04.12.2012
Сообщений: 3,791
|
|
Сообщение от maratus
|
Поскольку, это дело, как и положено, у меня работает если на хостинге, значит я не могу нормально настроить локальный сервер.
|
Как это понять? Раз 5 перечитал.
Сообщение от maratus
|
Уперся, и что-то даже не знаю куда идти.
|
Во что уперлись? Ответ от сервера отсутствует?
|
|
10.11.2020, 16:22
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,990
|
|
О чем речь и в чем проблема? На хосте, это тоже будет localhost для всего того, что на нем расположено, а для удаленного пользователя, это будут разные домены с разными адресами.
Есть сервер Open Server, установите его, в нем вы можете создавать для тестирования много виртуальных хостов, доменов, и все они будут зарегистрированы по одному и тому же петлевому адресу. Что голову то над этим ломать, это не ваша забота как разработчика. А вот если вы в своем коде будете явно оперировать адресами типа localhost:8080, то да, разместите на севере и ничего работать не будет.
|
|
10.11.2020, 16:22
|
Новичок на форуме
|
|
Регистрация: 10.11.2020
Сообщений: 9
|
|
Сообщение от Nexus
|
Как это понять? Раз 5 перечитал.
|
Все работает на хостинге. А на localhost нет.
Сообщение от Nexus
|
По что уперлись? Ответ от сервера отсутствует?
|
Мне кажется, что не выполняется в фоновом режиме php-интерпретатор. Сужу об этом по получаемому статусу 200 OK, но пустому возврату данных response.
|
|
10.11.2020, 16:41
|
Новичок на форуме
|
|
Регистрация: 10.11.2020
Сообщений: 9
|
|
Сообщение от laimas
|
Есть сервер Open Server, установите его, в нем вы можете создавать для тестирования много виртуальных хостов, доменов, и все они будут зарегистрированы по одному и тому же петлевому адресу. Что голову то над этим ломать, это не ваша забота как разработчика. А вот если вы в своем коде будете явно оперировать адресами типа localhost:8080, то да, разместите на севере и ничего работать не будет.
|
В том то и суть, я бы рад не заморачиваться этим, но как сделать, чтобы я мог вести отладку полностью на localhost?
Я о чем и говорю, что на хостинге все работает хорошо, а вот на своем компе, через localhost, я не могу просто походить по своему сайту, чтобы php нормально отвечало.
В своем коде, localhost не использую.
|
|
10.11.2020, 16:54
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,990
|
|
Сообщение от maratus
|
В том то и суть, я бы рад не заморачиваться этим, но как сделать, чтобы я мог вести отладку полностью на localhost?
|
https://ospanel.io/
Почитайте, установите, многое станет понятным. Вы исключительно именем домена оперировать будете, если только вам не нравится с IP домена заморачиваться. А если вы в коде своем используете относительные адреса, например
<a href="/path/page.html">Page</a>
то браузер протокол и имя домена сам подставит и будет в итоге запрос к htpp://yourdomain/path/page.html. В РНР есть все необходимое чтобы узнать все о домене и использовать, поэтому, на своем локальном хосте вы можете под каким угодно именем домена тестировать, на удаленном будет уже реальное.
Последний раз редактировалось laimas, 10.11.2020 в 17:06.
|
|
10.11.2020, 17:27
|
Новичок на форуме
|
|
Регистрация: 10.11.2020
Сообщений: 9
|
|
Сообщение от laimas
|
Почитайте, установите, многое станет понятным
|
Спасибо большое. Буду посмотреть ))
|
|
10.11.2020, 20:39
|
Новичок на форуме
|
|
Регистрация: 10.11.2020
Сообщений: 9
|
|
laimas,
Спасибо большое за подсказку.
Разобрался с Open Server. Работает как требуется )))
Благодарю!
|
|
|
|