我的.htaccess文件中有一些重写,看起来像这样(我已经更改了文件/ var名称,但基本上相同):
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^page/([^/\.]+)/pageno=([^/\.]+)?$ page.php?slug=$1&pageno=$2
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^page/([^/\.]+)/?$ page.php?slug=$1
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^page/([^/\.]+)/([^/\.]+)/pageno=([^/\.]+)?$ page.php?slug=$1&something=$2&pageno=$3
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^page/([^/\.]+)/([^/\.]+)/?$ page.php?slug=$1&something=$2
当我访问其中一个重写的网址时,例如www.mydomain.com/page/something,来自page.php?slug =的正确内容会在大多数浏览器中显示,但旧版本的Internet Explorer除外,问题是重写的URL返回404标题代码(可能是为什么有些浏览器不会显示内容,而其他浏览器会选择)。
我有其他重写似乎工作并返回200 OK标题,例如:
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/\.]+)-some-page-([^/\.]+).html?$ some-page.php?pageno=$2&myvar=$1
我能看到的唯一区别是上面的重写包含了一个假的.html扩展名,因此不确定这是否被视为不同。
任何帮助都将受到高度赞赏!
非常感谢
答案 0 :(得分:0)
添加
header("HTTP/1.0 200");
标题包括之后,如
define('WP_USE_THEMES', false);
require($_SERVER['DOCUMENT_ROOT'] . '/blog/wp-blog-header.php');
header("HTTP/1.0 200");