Wordpress永久链接不起作用。没有错误

时间:2013-11-28 09:34:19

标签: php wordpress .htaccess mod-rewrite permalinks

我在子域名上运行博客。 “blog.ourcompanyname.com”。

Wordpress文件夹位于“/ var / www / wordpress”

Apache实例在8081端口上运行(手动配置),并由Nginx(在80端口上运行)传递代理。我们需要NGINX的原因是因为我们在同一台服务器上运行第二个应用程序(VPS,Ubuntu 12.04 LTS),而且它不是“PHP”应用程序。

现在,一切顺利:您可以访问不同的页面,静态内容(图片等)正在运行。

但是,这是艰难的部分:

如果我启用永久链接(因为默认链接很糟糕) - 无论我在网址中输入什么内容,我都会在第一页(正面)上结束!

它可以是任何东西:例如,blog.ourcompanyname.com/2013/11/hello-world/ 或者blog.ourcompanyname.com/bla-bla-bla-bla /

我没有得到500或404错误。那令人毛骨悚然。

这是我们的APACHE2虚拟主机配置文件:

<VirtualHost *:8081>
        ServerAdmin webmaster@localhost

        DocumentRoot /var/www/wordpress
        <Directory />
                Options FollowSymLinks
                AllowOverride All
        </Directory>
        <Directory /var/www/wordpress/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog ${APACHE_LOG_DIR}/access.log combined

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>

</VirtualHost>

这是我们的NGINX配置文件:

server {
   server_name blog.ourcompanyname.com;

   access_log /var/log/nginx/blog.ourcompanyname.com.access.log main;
   error_log /var/log/nginx/blog.ourcompanyname.com.error.log;

   root /var/www/wordpress; # Wordpress blog

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

   location ~ \.php$ {
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_set_header Host $http_host;

      proxy_pass http://127.0.0.1:8081;
   }

   location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
      expires max;
      log_not_found off;
   }
}

.htaccess文件是通过wordpress生成的,所以我们根本不会触摸它。但是为了测试我还尝试将RewriteBase从“/”改为“/ wordpress /”以及其他与目录有关的东西,但无济于事。

拜托,帮助!

0 个答案:

没有答案