我需要在域的根目录下设置一个 Django 站点,然后在子目录中安装 Wordpress(例如 /blog/)。如何配置 NGinX 来实现这一点?“漂亮”URL 也必须适用于 Wordpress。
对于 Django,我使用的是已经配置好的 Gunicorn。从 NGinX,我将调用“proxy_pass”来指向它。PHP 通过 FPM 运行。
考虑到上述限制,我该如何配置 NGinX?如能得到任何帮助我将不胜感激!
谢谢。
更新:我尝试了几种方法,目前部分方法可行。我删除了所有 Django 配置。然后我在 /blog/ 子目录中找到了 Wordpress。在其中,我有 test.php,它只调用 phpinfo(),然后还有 test.html,它显示纯 html。调用 test.php 时,页面会加载。但是,当我调用 test.html 或 index.php(Wordpress 索引页)时,它会给我一个 404。
我的 nGinx 配置:
server {
listen 80;
root /path/to/www/root;
server_name domain.com;
access_log /path/to/logs/access.log;
error_log /path/to/logs/error.log;
location / {
index index.php;
}
location /blog {
alias /path/to/www/blog;
try_files $uri =404;
index index.php index.html;
}
location ~ /blog/.+\.php$ {
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /path/to/www/blog$fastcgi_script_name;
}
location ~ /\.ht {
deny all;
}
}
答案1
答案2
您设置location /blog/
并使用所有常用的 nginx 指令来传递给 PHP。