2012-03-08 57 views
0

我正在将一个Wordpress站点从Apache切换到Nginx。无法提供“隐藏”的wordpress安装

我们试图混淆它是一个WordPress的网站(我不知道为什么,但这些是要求)的事实。

在wordpress目录中有一些对静态资产的调用,所以它不完美。

大多数情况下,它工作正常(www.example.com和其他页面正常显示),但我无法让管理页面正常工作。

当你去example.com/wp-admin,服务器应加载/var/example.com/docroot/wordpress/wp-admin/index.php,但我不断收到一个404

我不确定我哪里出了问题。这是我的服务器的conf:

server { 
    server_name *.example.com; 
    root /var/example.com/docroot; 

    access_log logs/access.log; 
    error_log logs/error.log debug ; 

    gzip off; 

    # Add trailing slash to */wp-admin requests. 
    rewrite /wp-admin$ $scheme://$host$uri/ permanent; 

    # Rewrite wp-content to pretend we don't use Wordpress 
    location ~ ^/content/(.*)$ { 
     alias /var/example.com/docroot/wordpress/wp-content/$1; 
    } 

    location ~ ^/wp-content/(.*)$ { 
     alias /var/example.com/docroot/wordpress/wp-content/$1; 
    } 

    location ~ ^/includes/(.*)$ { 
     alias /var/example.com/docroot/wordpress/wp-includes/$1; 
    } 

    location ~ ^/wp-includes/(.*)$ { 
     alias /var/example.com/docroot/wordpress/wp-includes/$1; 
    } 

    location /wp-admin { 
     alias /var/example.com/docroot/wordpress/wp-admin; 
    } 

    # Basic php configuration 
    location ~ \.php$ { 
     include fastcgi_params; 
    fastcgi_split_path_info ^(.+\.php)(/.+)$; 
    fastcgi_index index.php; 
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 

     try_files $uri =404; 
} 

location/{ 
     try_files $uri $uri/ /index.php?$args; 
    } 

# static assets and blocking specific access 
    include sites-enabled/common.conf; 
} 

回答

0

的两件事情我没有得到这个工作:

Proxy_pass而不是别名

location /wp-admin { 
    proxy_pass $scheme://www.dev4.railrode.net/wordpress/wp-admin/; 
} 

而对于try_files指令,增加了WordPress的$ URI选项:

try_files $uri /wordpress$uri =404