使用NGINX在同一域上部署React前端和Codeigniter后端

时间:2020-05-19 10:50:58

标签: php reactjs codeigniter nginx

我有在不同服务器上运行的React App,后端部署在其他服务器上。可以使用网址https://example.com访问react应用,使用网址https://example.com/admin

访问基于codeigniter构建的后端。

React前端应用程序运行正常。

问题是,如果我重新加载管理员网址(例如:https://example.com/admin/my-profile),它会显示React应用产生的404错误。如果我进行硬刷新,则可以正常工作并显示相关页面。 react应用程序不应在路径/admin中执行。我认为浏览器会缓存react应用,无论使用什么url都可以在整个网站上使用它。

我在react app和codeigniter上都尝试了针对缓存的所有标头和元标记。但这没有帮助。

这是我配置/ etc / nginx / sites-available / default文件的方式

    set $upstream xx.xx.xx.xx;

    location / {
        proxy_pass http://$upstream;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }

    location ~ /admin/?(.*)$ {
        try_files $uri $uri /admin/index.php?$1;

        location ~ \.php$ {
            include snippets/fastcgi-php.conf;
            fastcgi_pass unix:/run/php/php7.0-fpm.sock;
        }
    }

我希望我添加了所有必需的信息。请帮助我解决这个问题!

0 个答案:

没有答案