最新消息:iOS编程开发交流群(6906921) ,Mac.Cocoa开发交流群(7758675) 欢迎iOS/macOS开发编程爱好及学习者加入!

解决wordpress伪静态后根目录下的网页和其他文件访问全部404

Windows 天狐 18016浏览 10评论

问题一:window2003 iis6.0下wordpress根目录下新建的目录和文件都是404,前提是启用了伪静态组件

原因:我们把所有的请求都交给index.php处理了,而本身存在的html和gif等也得经过index.php,但实际中index.php没这方面的功能,所以....问题可以通过修改伪静态规则解决

RewriteRule ^/$ /index.php [L]
RewriteRule /(.*) /index.php/$1 [L]

删掉换成

RewriteRule ^index\.php$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /index.php [L]

试一下是不是可以了!

===================================================

问题二:win主机iis,设置了伪静态,根目录下面有/baidu_sitemap.html,但是点击这个链接却无法打开地图页面而是呈现404

有的人只是想解决这一个文件404问题这时只要把伪静态规则中加入

RewriteRule /baidu_sitemap.html   /baidu_sitemap.html [L] 即可 解决这一个文件访问出错问题

===================================================

对应问题一:贴一下我在用的规则 isap_rewrite3的兼容httpd.ini的 .htaccess文件(PS:httpd.ini是 isap_rewrite2.x的配置文件)

对应问题二的规则:

 

 

转载请注明:天狐博客 » 解决wordpress伪静态后根目录下的网页和其他文件访问全部404

微信 OR 支付宝 扫描二维码
为天狐 打赏
非常感谢你的支持,哥会继续努力!
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

网友最新评论 (10)

  1. 你好,按照你问题一的解决办法根目录文件是可以访问了,但是之前生成的伪静态链接一点全部显示的是404页面的代码内容,而不是原来的内容,这个该如何解决呢
    如影随形12年前 (2013-03-29)回复
    • .......
      天狐Sky12年前 (2013-04-03)回复
      • 我没表述清楚?
        如影随形12年前 (2013-04-08)回复
        • 应该是伪静态组件有差异 你复制核心代码就行了
          天狐Sky12年前 (2013-04-08)回复
          • 我只是把 RewriteRule ^/$ /index.php [L] RewriteRule /(.*) /index.php/$1 [L] 删掉换成 RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] 其他的没有改,改完之后就变成我说的那种情况了。
            如影随形12年前 (2013-04-10)
          • RewriteEngine On RewriteCompatibility2 On RepeatLimit 200 RewriteBase 很重要的哦
            天狐Sky12年前 (2013-04-10)
          • 加上了,也不行。 点击链接显示的是
            如影随形12年前 (2013-04-10)
  2. 你好,按你写的方式如: RewriteEngine On RewriteCompatibility2 On RepeatLimit 200 RewriteBase # For file-based wordpress content (i.e. theme), admin, etc. RewriteRule /wp-(.*) /wp-$1 [L] # For normal wordpress content, via index.php RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ./index.php [L] RewriteRule /tag/(.*)/page/([0-9]+) /index\.php\?tag=$1&paged=$2 RewriteRule /google4148ad5642462303.html /google4148ad5642462303.html [L] RewriteRule /bingsiteAuth.xml /bingsiteAuth.xml [L] 打开要目录下的google4148ad5642462303.html 还是404,把google4148ad5642462303.html文件放到wp_admin下就能打开,是什么情况啊,能帮我看看么?
    外贸SEO12年前 (2013-04-20)回复
    • 直接用第二种方法吧 RewriteRule /google4148ad5642462303.html /google4148ad5642462303.html [L]
      天狐Sky12年前 (2013-04-20)回复
  3. 额...
    lxtx11年前 (2014-03-28)回复