`
dmhorse
  • 浏览: 24727 次
  • 来自: ...
最近访客 更多访客>>
社区版块
存档分类
最新评论

WP Rewrite url for nginx

阅读更多

http://efreedom.com/Question/1-3491258/Multi-Site-Wordpress-Rewrite-Rules-Nginx

 

server

{


    server_name 

*.

example

.

com

;

  
    listen 

80

;


    

#on server block


    

##necessary if using a multi-site plugin


    server_name_in_redirect off

;


    

##necessary if running Nginx behind a reverse-proxy


    port_in_redirect off

;


    access_log 

/

var

/

log

/

nginx

/

example

-

com

-

access

.

log

;



    location 

/

 

{


        root   

/

var

/

www

/

example

.

com

/

wordpress

;


        index  index

.

html index

.

htm index

.

php

;


        rewrite 

^.*/

files

/(.*)

$ 

/

wp

-

includes

/

ms

-

files

.

php

?

file

=

$1 

last

;


        

if

 

(!-

e $request_filename

)

 

{


            rewrite 

^.+/?(/

wp

-.*)

 $1 

last

;


            rewrite 

^.+/?(/.*\.

php

)

$ $1 

last

;


            rewrite 

^(.+)

$ 

/

index

.

php

?

q

=

$1 

last

;


        

}


    

}



    location 

~*

 

^.+\.(

html

|

jpg

|

jpeg

|

gif

|

png

|

ico

|

css

|

zip

|

tgz

|

gz

|

rar

|

bz2

|

doc

|

xls

|

exe

|

pdf

|

ppt

|

txt

|

tar

|

mid

|

midi

|

wav

|

bmp

|

rtf

|

js

)

$
    

{


        root 

/

var

/

www

/

example

.

com

/

wordpress

;


        rewrite 

^

/.*(/

wp

-.*/.*\.(

html

|

jpg

|

jpeg

|

gif

|

png

|

ico

|

css

|

zip

|

tgz

|

gz

|

rar

|

bz2

|

doc

|

xls

|

exe

|

pdf

|

ppt

|

txt

|

tar

|

mid

|

midi

|

wav

|

bmp

|

rtf

|

js

))

$ $1 

last

;


        rewrite 

^.*/

files

/(.*(

html

|

jpg

|

jpeg

|

gif

|

png

|

ico

|

css

|

zip

|

tgz

|

gz

|

rar

|

bz2

|

doc

|

xls

|

exe

|

pdf

|

ppt

|

txt

|

tar

|

mid

|

midi

|

wav

|

bmp

|

rtf

|

js

))

$

/

wp

-

includes

/

ms

-

files

.

php

?

file

=

$1 

last

;


        expires 

30d

;


        

break

;


    

}



    location 

~

 wp

\-.*\.

php

|

wp

\-

admin

|\.

php$ 

{


        include 

/

etc

/

nginx

/

fastcgi_params

;


        fastcgi_pass  

127.0

.

0.1

:

9000

;


        fastcgi_index index

.

php

;


        fastcgi_param  SCRIPT_FILENAME  

/

var

/

www

/

example

.

com

/

wordpress$fastcgi_script_name

;


    

}




}





http://www.yeeann.com/archives/104.html



How to:Nginx rewrite rules for WordPress Multi-Site

在WordPress 3.0中,如果你想启用Multi-Site的功能,是需要对WebServer做一些必要的rewrite rules设置的。如果你用的是Apache,只需要把安装WordPress时生成的rewrite rules复制到Apache的配置文件即可。如果是使用Nginx作为WebServer,可以参考下面的rewrite规则,经过某的测试基本没问题。

rewrite ^.*/files/(.*)$ /wp-includes/ms-files.php?file=$1 last; rewrite ^(.*)?(/wp-(content|admin|includes)/.*) $2 last; rewrite ^(.*)?(/wp-.*\.php)$ $2 last;

location / { index index.php; if (!-e $request_filename) { rewrite ^.+?(/wp-.*) $1 last; rewrite ^.+?(/.*\.php)$ $1 last; rewrite ^ /index.php last; } }

需要完善的地方有待改进...

标签:  Nginx

rewrite ^.*/files/(.*)$ /wp-includes/ms-files.php?file=$1 last; rewrite ^(.*)?(/wp-(content|admin|includes)/.*) $2 last; rewrite ^(.*)?(/wp-.*\.php)$ $2 last;

location / { index index.php; if (!-e $request_filename) { rewrite ^.+?(/wp-.*) $1 last; rewrite ^.+?(/.*\.php)$ $1 last; rewrite ^ /index.php last; } }

分享到:
评论

相关推荐

    nginx组件.md

    Nginx 提供了多种方式进行 URL 重定向,包括 `proxy_pass`、`return` 和 `rewrite`。 ##### 2.1 Proxy_pass `proxy_pass` 主要用于将请求转发到后端服务器。它可以指定具体的主机名和端口,也可以使用 `upstream` ...

    WordPress与Drupal的Nginx配置rewrite重写规则示例

    `rewrite`指令用于重定向`/wp-admin`到带斜杠的版本,以避免URL规范化问题。`location ~ \.php$`部分处理所有.php文件,将请求转发给PHP-FPM处理。静态文件的处理通过其他location块实现,通过设置缓存策略提高加载...

    Nginx下让WordPress支持固定链接的伪静态规则

    这里要注意,`rewrite`指令用于执行URL重写,`break`关键字表示结束当前重写规则的处理。 在完成了配置修改后,记得保存文件并重启Nginx服务,以使新的配置生效。在Linux环境下,你可以使用以下命令来重启Nginx: ...

    配置解决Nginx服务器中WordPress路径不自动加斜杠问题

    在使用Nginx作为Web服务器时,可能会遇到路径问题,尤其是在处理WordPress后台管理路径/wp-admin时。当用户在访问后台管理链接时,如果忘记在链接末尾加上斜杠,WordPress的链接将会产生404错误。这主要是因为Nginx...

    WordPress中开启多站点支持及Nginx的重写规则配置

    在配置Nginx的重写规则时,要确保正确处理静态文件、PHP脚本以及WordPress的URL结构。通常,这包括对`try_files`、`rewrite`和`if`指令的使用,以及对`fastcgi_pass`的设置,以确保PHP请求能正确转发到FastCGI服务器...

    Nginx下修改WordPress固定链接导致无法访问的问题解决

    rewrite ^/wp-admin$ $scheme://$host$uri/permanent; ``` 对于SEO优化,可以考虑使用WPSlugTranslate这类插件来自动将中文标题转换成英文,以提高搜索引擎优化(SEO)效果。这样即使出现中文链接,也有助于搜索...

    WordPress-Server-Configs:用于 WordPress 的常见 Linux 软件堆栈 10up 的配置

    4. **URL重写**:通过Nginx的rewrite模块,可以实现友好的URL结构,提高SEO效果。 **二、WordPress与Nginx集成** 1. **FastCGI进程管理器**:PHP-FPM(FastCGI Process Manager)负责处理PHP脚本。Nginx将HTTP请求...

    wordpress修改固定链接后301重定向的方法

    2. 使用global关键字调用WP的全局变量,如$wp、$wp_rewrite和$rewrite_config,以确保在自定义函数中可以访问WordPress核心的函数和属性。 3. 创建自定义函数wpdaxue_pm_the_posts(),该函数会在WordPress处理单个...

    WordPress中用于更新伪静态规则的PHP代码实例讲解

    wp_redirect( admin_url( 'options-general.php' ) ); die; } add_action( 'load-themes.php', 'Bing_theme_activation' ); ``` 同样,在插件激活时更新伪静态规则,可以使用`register_activation_hook`函数,...

Global site tag (gtag.js) - Google Analytics