所有对同一目录的请求,无论域如何 - NGINX
All requests to same directory, regardless of domain - NGINX
- WordPress 多站点
- Nginx
- WPMU 域映射器
(我认为我的问题有一个非 WP 特定的解决方案。)
指向我服务器 IP 地址的域不会发送到我的 WordPress 站点,除非它们在配置文件中定义或域在 /sites-enabled
中定义
因此,如果我只是将某个随机 example.com
域的 A 记录设置为我的 IP,我会收到一条 "Welcome to nginx on Debian!" 消息。
但我需要它直接进入 WordPress 目录。
而且我需要它在任何人设置域以指向 IP 地址的任何时候发生。那就是 --- 我需要设置配置,以便所有请求都转到 WordPress 目录。
编辑:
我曾尝试将默认目录设置为 /var/www/wordpress
--- 但似乎没有用。
您可以在 nginx/conf.d/ 配置中使用正则表达式来捕获域:
server {
listen 80;
set $location_root "/var/www/";
server_name ~^(?<somedomain>[\w-\.]+\.com)$;
root $location_root/$somedomain;
include conf.d/wpconf;
}
如果您的域不仅在 *.com 区域,只需修复正则表达式。例如,对于域 site.com,此正则表达式将转至 /var/www/site.com 目录。
注意:包括 conf.d/wpconf 不是必需的,因为我在该文件中存储了 WPsites 的特定选项。
解决方法很简单:
server {
listen 80 default_server;
server_name myprimarydomain.com *.myprimarydomain.com;
server_name_in_redirect off;
root /var/www/wordpress;
.
.
.
如果您遵循 the Nginx/Multisite guide from WPMU --- 您还必须删除 sites-available
目录中的 default
文件。它被包含在 confd
文件中的一行中,并且它包含一个冲突的 default_server
行。
- WordPress 多站点
- Nginx
- WPMU 域映射器
(我认为我的问题有一个非 WP 特定的解决方案。)
指向我服务器 IP 地址的域不会发送到我的 WordPress 站点,除非它们在配置文件中定义或域在 /sites-enabled
因此,如果我只是将某个随机 example.com
域的 A 记录设置为我的 IP,我会收到一条 "Welcome to nginx on Debian!" 消息。
但我需要它直接进入 WordPress 目录。
而且我需要它在任何人设置域以指向 IP 地址的任何时候发生。那就是 --- 我需要设置配置,以便所有请求都转到 WordPress 目录。
编辑:
我曾尝试将默认目录设置为 /var/www/wordpress
--- 但似乎没有用。
您可以在 nginx/conf.d/ 配置中使用正则表达式来捕获域:
server {
listen 80;
set $location_root "/var/www/";
server_name ~^(?<somedomain>[\w-\.]+\.com)$;
root $location_root/$somedomain;
include conf.d/wpconf;
}
如果您的域不仅在 *.com 区域,只需修复正则表达式。例如,对于域 site.com,此正则表达式将转至 /var/www/site.com 目录。
注意:包括 conf.d/wpconf 不是必需的,因为我在该文件中存储了 WPsites 的特定选项。
解决方法很简单:
server {
listen 80 default_server;
server_name myprimarydomain.com *.myprimarydomain.com;
server_name_in_redirect off;
root /var/www/wordpress;
.
.
.
如果您遵循 the Nginx/Multisite guide from WPMU --- 您还必须删除 sites-available
目录中的 default
文件。它被包含在 confd
文件中的一行中,并且它包含一个冲突的 default_server
行。