Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 10.11.2020, 16:06
Новичок на форуме
Отправить личное сообщение для maratus Посмотреть профиль Найти все сообщения от maratus
 
Регистрация: 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.
Ответить с цитированием
  #2 (permalink)  
Старый 10.11.2020, 16:16
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,705

Сообщение от maratus
Поскольку, это дело, как и положено, у меня работает если на хостинге, значит я не могу нормально настроить локальный сервер.
Как это понять? Раз 5 перечитал.

Сообщение от maratus
Уперся, и что-то даже не знаю куда идти.
Во что уперлись? Ответ от сервера отсутствует?
Ответить с цитированием
  #3 (permalink)  
Старый 10.11.2020, 16:22
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

О чем речь и в чем проблема? На хосте, это тоже будет localhost для всего того, что на нем расположено, а для удаленного пользователя, это будут разные домены с разными адресами.

Есть сервер Open Server, установите его, в нем вы можете создавать для тестирования много виртуальных хостов, доменов, и все они будут зарегистрированы по одному и тому же петлевому адресу. Что голову то над этим ломать, это не ваша забота как разработчика. А вот если вы в своем коде будете явно оперировать адресами типа localhost:8080, то да, разместите на севере и ничего работать не будет.
Ответить с цитированием
  #4 (permalink)  
Старый 10.11.2020, 16:22
Новичок на форуме
Отправить личное сообщение для maratus Посмотреть профиль Найти все сообщения от maratus
 
Регистрация: 10.11.2020
Сообщений: 9

Сообщение от Nexus
Как это понять? Раз 5 перечитал.
Все работает на хостинге. А на localhost нет.

Сообщение от Nexus
По что уперлись? Ответ от сервера отсутствует?
Мне кажется, что не выполняется в фоновом режиме php-интерпретатор. Сужу об этом по получаемому статусу 200 OK, но пустому возврату данных response.
Ответить с цитированием
  #5 (permalink)  
Старый 10.11.2020, 16:41
Новичок на форуме
Отправить личное сообщение для maratus Посмотреть профиль Найти все сообщения от maratus
 
Регистрация: 10.11.2020
Сообщений: 9

Сообщение от laimas
Есть сервер Open Server, установите его, в нем вы можете создавать для тестирования много виртуальных хостов, доменов, и все они будут зарегистрированы по одному и тому же петлевому адресу. Что голову то над этим ломать, это не ваша забота как разработчика. А вот если вы в своем коде будете явно оперировать адресами типа localhost:8080, то да, разместите на севере и ничего работать не будет.
В том то и суть, я бы рад не заморачиваться этим, но как сделать, чтобы я мог вести отладку полностью на localhost?

Я о чем и говорю, что на хостинге все работает хорошо, а вот на своем компе, через localhost, я не могу просто походить по своему сайту, чтобы php нормально отвечало.

В своем коде, localhost не использую.
Ответить с цитированием
  #6 (permalink)  
Старый 10.11.2020, 16:54
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 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.
Ответить с цитированием
  #7 (permalink)  
Старый 10.11.2020, 17:27
Новичок на форуме
Отправить личное сообщение для maratus Посмотреть профиль Найти все сообщения от maratus
 
Регистрация: 10.11.2020
Сообщений: 9

Сообщение от laimas
Почитайте, установите, многое станет понятным
Спасибо большое. Буду посмотреть ))
Ответить с цитированием
  #8 (permalink)  
Старый 10.11.2020, 20:39
Новичок на форуме
Отправить личное сообщение для maratus Посмотреть профиль Найти все сообщения от maratus
 
Регистрация: 10.11.2020
Сообщений: 9

laimas,
Спасибо большое за подсказку.
Разобрался с Open Server. Работает как требуется )))
Благодарю!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
JS + PHP - не могу подружить их. AciDWarrioR Общие вопросы Javascript 13 01.03.2016 14:06
Решение проблемы кодировок для AJAX и PHP без iconv (cp1251 в AJAX) Serge Ageyev AJAX и COMET 10 24.04.2013 20:48
Название ячейки таблицы Questioner Общие вопросы Javascript 6 16.02.2011 09:58
Не получается передать переменную из JS в PHP Lion_astana AJAX и COMET 2 23.11.2010 17:23
ajax запрос с подгружемным js HelpeR AJAX и COMET 1 27.10.2008 12:44