伪静态设置后重写页面不存在

2016-07-07 15:25 来源:www.chinab4c.com 作者:ecshop专家

在网上搜了许多,还是没解决完问题

回答:
错误如图所示

2.jpg (90.28 KB)

修改好,前台出现这个错误

2.jpg

1.jpg (38.57 KB)

服务器的配置,ix 多IP的PHP空间

1.jpg


在线等解决办法

你可以把
doc 里面
URLRewrite.txt
给空间商,让空间商帮忙设置

造成这个的原因就是伪静态规则没有起到作用,或者规则错误,再就是主机不支持重写

好像规则错误,但不知道怎么改
下面是一个人写的关于IX的。

对IX主机的ReWrite和.Htaccess文件的规则,笔者这里要多说两句:

目前很多程序都需要使用伪静态来优化网页和做搜索引擎优化(SEO),这必然要用到ReWrite重写,国外的多数Linux的主机都是支持.htaccess的方式实现rewrite的。

但是IX在这方面有些特殊。

最近有客户反应他的程序,PHP执行没问题,但是开启伪静态就无法访问。我们一起研究了4天,跟IX的客服也做了无数沟通,IX坚持说htaccess的规则有问题,而我们却一直找不到原因。

幸好客户自己懂得程序,我们拿出已经实现过伪静态的IX主机上的网站做对比,并且找到Discuz程序的规则,对照写了一下客户原来的规则,最后网站可以使用了。

我把前后两段htaccess代码给大家贴出来,大家看一下,希望有所借鉴。


之前的错误代码:



RewriteEngine On

RewriteRule ^(.*)/(content|user_order)-([0-9]+)\.html$ $1/$2.php?id=$3
RewriteRule ^(.*)/sell-.*-([0-9]+)\.html$ $1/index.php?g_id=$2
RewriteRule ^(.*)/index-.*([0-9]+)\.html$ $1/index.php?g_id=$2
RewriteRule ^(.*)/(video|news)-([0-9]+)\.html$ $1/$2.php?page=$3

现在正确的代码
RewriteEngine On
RewriteRule ^(content|user_order)-([0-9]+)\.html$ $1.php?id=$2
RewriteRule ^sell-.*-([0-9]+)\.html$ index.php?g_id=$1
RewriteRule ^index-([0-9]+)\.html$ index.php?g_id=$1
RewriteRule ^(video|news)-([0-9]+)\.html$ $1.php?page=$2

RewriteRule ^(.+)\.html$ $1.php
RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)
RewriteRule .* - [F]


大家可以两个规则对比来看下,来完善自己的规则。

我帮你搞定

10# qq_733905

那先谢谢了

7# 晓天

国外的大空间商,是不会做这样的事的,刚咨询了,都不管源码的问题。

8# 镜花水月


应该是规则的写法不同,刚客服发了一个1.3版本的,可惜我看不懂,不会写这个。

Q 我啊。。。。。。

楼上知道什么啊,直接说 啊

继续等高手归来