我的问题如下:我在 Nginx 上使用带有“漂亮链接”的 Wordpress。我还在端口 88 和 1234 上运行 2 个其他服务,我想创建一个子域 bugs.mydomain 和 mail.mydomain。我在位置 / 上做了代理通行证,但它仅适用于主目录,域 / 之后的任何内容都属于 Wordpress“漂亮链接”机制。你知道如何解决这个问题吗?我的配置文件如下:服务器配置:
server {
listen <IP>:80;
root /usr/share/nginx/www/domain;
index index.html index.htm index.php;
server_name domain www.domain;
location / {
try_files $uri $uri/ /index.html;
if ( $host ~ "bugs.domain" ) {
proxy_pass http://domain:88;
}
if ( $host ~ "mail.domain" ) {
proxy_pass http://domain:1234;
}
}
location /doc/ {
alias /usr/share/doc/;
autoindex on;
allow 127.0.0.1;
deny all;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
include /home/domain/public_html/nginx.conf;
}
指定域的配置(使用 Wordpress):
#First there is many rewrites for the W3TC plugin, like minification, caches etc
if ($host ~* ^www\.(.*))
{
set $host_without_www $1;
rewrite ^/(.*)$ $scheme://$host_without_www/$1 permanent;
}
#
# unless the request is for a valid file, send to bootstrap
if (!-e $request_filename)
{
rewrite ^(.+)$ /index.php?q=$1 last;
}
现在,当我输入 domain:88 或 domain:1234 时,它就可以工作了。当我输入 bugs.domain 时,网站会加载,但没有 CSS 或图像可以工作,因为 url 是 bugs.domain/somapath,这属于 Wordpress 引导程序。我的想法用完了。