我正在尝试在AWS EC-2实例上使用Angular Application设置Wordpress博客。
我面临的问题与静态文件有关,即css / js / images / etc。
Angular应用程序位于 /home/ubuntu/project/
中。
WordPress在 /var/www/html/blog/
我想设置 www.example.com 以便进行角度应用及其所有路线。 对于wordpress, www.example.com/blog 及其所有路由。
当前,wordpress在我当前的nginx配置下运行良好。
当前Nginx配置:
server {
listen 80 default_server;
listen [::]:80 default_server;
root /mnt/d/VCN/nginx/html;
access_log /var/www/html/website/access.log;
error_log /var/www/html/website/error.log;
index index.php index.html index.htm index.nginx-debian.html;
server_name _;
location = /favicon.ico { log_not_found off; access_log off; }
location = /robots.txt { log_not_found off; access_log off; allow all; }
location / {
proxy_pass http://127.0.0.1:4000/;
}
location /blog {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_buffering off;
}
location ~* \.(css|gif|ico|jpeg|jpg|js|png)$ {
expires max;
log_not_found off;
}
}
问题:
我现在不能为角度应用提供静态图像。如果我在 server 块中更改了root
,Wordpress将停止工作。而且,如果我在 / 位置添加root
,Angular应用程序仍然无法获取图像并返回 404 。
我什至尝试为root
的位置设置一个单独的/blog
字段,但是它仍然无法正常工作。
我什至尝试使用/assets/images
来使所有静态文件都可以从assets
文件夹中提供,但仍然无法正常工作。
如果有人可以破解它,也请注意解释解决方案。更容易发现逻辑上的缺陷以及为什么事情没有解决。
我正在使用Angular-cli,因此文件夹结构相同。
我也尝试了一个简单的nodejs / expressjs应用程序,但是它不起作用。 Simple Nodejs / Expressjs应用程序的文件夹结构为
/home/ubuntu/test/
|-node_modules
|-public
|-css
|-js
|-index.html
|-server.js