Wordpress + Angularjs проблема с миграцией сайта: переменная dispalys $ domain вместо реального домена / IP - PullRequest
0 голосов
/ 24 апреля 2020

Я надеюсь, что все будут здоровы и в безопасности в эти странные и беспрецедентные времена.

Хотя у меня очень мало опыта с Wordpress и ни один из AngularJS, мне пришлось перенести сайт Wordpress с «умирающий» сервер. Ранее сайт размещался в стеке Bitnami WordPress, а новый сервер представляет собой готовый шаблон Wordpress с Digital Ocean Marketplace (ОС: Ubuntu18.04).

Все прошло хорошо, Wordpress настроен, база данных настроен, и все, кажется, работает нормально, кроме одной части: пользовательский шаблон (крайне важный для этого веб-сайта) выдает следующую ошибку в консоли браузера:

Firefox:

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://$domain/stories-api/. (Reason: CORS request did not succeed).

Chrome:

theme.min.js:103 GET http://%24domain/stories-api/ net::ERR_NAME_NOT_RESOLVED

Сначала я думал, что это связано с заголовками CORS и поэтому я вышел и сломал всю мою мораль безопасности, чтобы исправить это. Ничего не получалось.

Затем я заметил, что в теме используется AngularJS, поэтому я зашел и скачал Node, npm и Gulp. Я запускаю npm install, запускаю gulp, перезапускаю Apache2, но это не решает проблему.

Если кому-то интересно, что такое / Stories-api /, вот вам go:


<?php
    if ($_SERVER['REQUEST_METHOD'] === 'GET') {
        $directory = "../place-stories-here/";
        // $index = 0;
        $arr = array();

        // Open a directory, and read its contents
        if (is_dir($directory)){
          if ($dh = opendir($directory)){
            while (($file = readdir($dh)) !== false){
                // Fill the array
                $obj = array('src' => $file, 'extension' => pathinfo($file, PATHINFO_EXTENSION), 'value' => true);
                if($obj['extension'] !== "" && $obj['src'] !== '.DS_Store') {
                    array_push($arr, $obj);
                };
            };
            closedir($dh);
          };
        };
        // Create JSON
        echo json_encode($arr, JSON_PRETTY_PRINT);
    } else {
        echo "request unavailable";
    };
?>

Я запустил поиск в репозитории кода, чтобы найти, где вызывается "story-api", и нашел 2 файла, где он используется. Оба в папке пользовательской темы:

  • app. js
  • theme.min. js

Оба используют Angular JS.


У кого-нибудь есть идея, что может быть причиной этого, и указываете мне правильное направление?

Если вам нужно больше фрагментов кода, дайте мне знать!

Заранее спасибо!

1 Ответ

0 голосов
/ 27 апреля 2020

Хорошо, так что после нескольких дней и многих перезапусков мне нужно было только:

  • Go, чтобы: Настройки> Постоянные ссылки
  • Нажмите Сохранить изменения
  • Нажмите Сохранить изменения еще раз

И теперь это работает. По какой-то причине при миграции пришлось заново создать постоянные ссылки для правильной работы сайта.

...