Обход политики того же происхождения в локальной среде

#php #apache #api #gruntjs

#php #apache #API #gruntjs

Вопрос:

Я разрабатываю SPA, который работает Backbone.js локально, и настраиваю сервер с помощью Grunt для livereload . Я создал REST api с PHP для своего приложения, которое я также запускаю локально. Теперь у меня проблема с междоменной политикой, поскольку мои серверы находятся на разных портах. Я попытался объединить два сервера на одном порту как из apache, так и из grunt, но я не уверен, возможно ли это вообще. Как мне справиться с этой проблемой? я хотел бы разработать свое приложение локально и использовать livereload возможности grunt.

Ответ №1:

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

Это пример конфигурации для него — https://github.com/vodolaz095/hunt/blob/master/examples/serverConfigsExamples/nginx.conf

Он обслуживает статические файлы html, css, js из каталога /home/nap/static и серверной localhost:3000 части, и оба они доступны на localhost: 80 как один сервер.

Я надеюсь, что это то, что вам нужно.

Ответ №2:

В итоге я использовал grunt-connect-proxy, который сделал именно то, что мне было нужно.