我已经在一个子目录中安装了wordpress(blog
). 在根目录中,我安装了Magento。现在,文件目录如下所示:
app
downloader
includes
media
....
blog/wp-admin
我的服务器是
nginx. 当我在wordpress的永久链接设置中将URL设置为:
http://www.example.com/blog/index.php/sample-post/
…所有帖子都可用。现在我要删除
index.php
从该URL。我该怎么做?当我将自定义结构设置为…
http://www.example.com/blog/sample-post/
…URL没有被WordPress解析,我得到了404。
SO网友:Christiaan
问题可能与您博客的Nginx中的服务器设置有关。/blog/的位置规则可能错误,特别是try\\u文件。应该是这样的:
location /blog/ {
try_files $uri $uri/ /index.php$is_args$args;
}
这将告诉Nginx它应该尝试查找请求的资源的顺序。它将首先尝试在URL中找到确切的对象。如果不存在,它将尝试将该对象作为目录查找。如果不存在,它会将请求传递给索引。php以及任何参数或查询字符串(如果存在)。自索引。在WordPress的主处理程序中,这将触发WordPress根据重写规则查找您请求的页面或帖子。
这种配置的优点在于,您现在可以将permalink结构更改为WordPress支持的任何内容,而无需更改Nginx规则。与在Nginx中使用显式重写规则相比,这也是推荐的方法。