Я - веб-интерфейс JS dev, и я начал работать над проектом, который имеет PHP бэкэнд, работающий на платформе Yii2. Проект пришел без инструкций по установке, поэтому я пытаюсь определить его как I go, но исходя из Node.js ... это довольно странно.
Я скачал и установил WAMP, создал MySQL БД для API с использованием MyPHPAdmin и импорт данных из дампа. Это сработало, и я могу видеть таблицы и данные. Теперь, когда я go до localhost
, я вижу, что WAMP работает. Я попробовал пример проекта Yii, который также работает на localhost/yii-test/web
.
. В соответствии с Yii я должен обслуживать этот API, переместив весь этот каталог API в каталог /www
установки WAMP. Теперь, если я go до localhost/fania-api
, я вижу список каталогов для моего сервера. Для меня это говорит о том, что API доступен локально.
Я настроил .env
моего внешнего интерфейса так, чтобы он указывал на localhost/fania-api
, но когда я отправляю любой запрос, я получаю ошибку CORS, которую я предполагаю маскирует около 404 или 500 ошибок. Самое смешное, что .env, который мне дали, идет с URL http://fanintelligence.localhost
, а не с Yii, заданным localhost/fania-api
.
Итак, мой вопрос: как эти две вещи сочетаются друг с другом? Я установил WAMP и настроил MySQL DB на порту по умолчанию, но как мой API узнал, что он там есть? Как я могу узнать, правильный ли это порт? А как насчет этих двух разных URL, как они совпадают?
Кроме того, API не содержит папку / web, не уверен, является ли это проблемой или нет, но я не смог обработать ее с php yii serve
или. Если бы это был сервер Node.js, я бы клонировал npm install
и npm run start
, который, вероятно, делал бы что-то вроде build
и serve
. Я не могу поверить, что это так сложно настроить в сравнении.
Любой совет или помощь очень важны!
РЕДАКТИРОВАТЬ: Когда я пытаюсь получить доступ к своему серверу из внешнего интерфейса по любому адресу, я get: Access to fetch at 'http://localhost/fania-api/oauth2/token?accessToken=undefined' from origin 'http://localhost:3000' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.
/fania-api/oauth2/token?accessToken=undefined:1 Failed to load resource: net::ERR_FAILED
Однако я не считаю, что это настоящая ошибка CORS, так как предыдущий разработчик также использовал локальный для тестирования, поэтому политика CORS позволит это сделать. Я предполагаю, что адрес, на который я указываю, неверен или сервер фактически не работает.
Если я пытаюсь запустить php yii serve
: Document root "C:\Users\hesel\dev\repo\eartotheground\fania-api\console/web" doe
s not exist.
Но суть ошибочной Поведение - это невозможность подключения к предположительно работающему локальному серверу (он вообще работает? Как я могу определить?).