php伪静态后html不能访问怎么办

php伪静态后html不能访问的解决办法:首先判断文件是否存在;然后设置存在则不rewirte,不存在且符合规则才rewrite;最后修改htaccess文件即可。

推荐:《PHP视频教程》

具体问题:

PHP伪静态后不能访问纯html文件

.htaccess文件

RewriteEngine on
RewriteRule index.html$ index.php
RewriteRule art.html$ project.php?file=art
RewriteRule music.html$ project.php?file=music
RewriteRule dance.html$ project.php?file=dance
RewriteRule radio.html$ project.php?file=radio
RewriteRule director.html$ project.php?file=director
RewriteRule perform.html$ project.php?file=perform
RewriteRule flight.html$ project.php?file=flight
RewriteRule ([a-zA-Z] )-([0-9] ).html$ page.php?pageid=$2
RewriteRule ([a-zA-Z] )-([0-9] )-([0-9] ).html$ page.php?pageid=$2&info=$3
RewriteRule ([a-zA-Z] )-([0-9] )-rules-(.*)-([a-zA-Z] ).html$ page.php?pageid=$2&info=$3&file=$4
RewriteRule ([a-zA-Z] )-([0-9] )-([0-9] )-([a-zA-Z] ).html$ page.php?pageid=$2&menuid=$3&file=$4
RewriteRule ([a-zA-Z] )-([0-9] )-([a-zA-Z] ).html$ page.php?pageid=$2&file=$3
RewriteRule ([a-zA-Z] )-([0-9] )-([a-zA-Z] )-list([0-9] ).html$ page.php?pageid=$2&file=$3&page=$4
RewriteRule ([a-zA-Z] )-([0-9] )-([0-9] )-([a-zA-Z] )-list([0-9] ).html$ page.php?pageid=$2&menuid=$3&file=$4&page=$5
RewriteRule ([a-zA-Z] )-([0-9] )-([0-9] )-(.*)-([a-zA-Z] ).html$ page.php?pageid=$2&menuid=$3&artid=$4&file=$5

而且我都已经把 RewriteRule index.html$ index.php 这句去掉了 但打开的时候 还是反问伪静态

我现在要访问网站里的纯静态HTML文件,同时又要求PHP的伪静态也能访问,怎么做?

解决办法:

应该先判断文件是否存在,存在则不rewirte。不存在且符合规则才rewrite

例如:文件或目录不存在则rewrite到index.php,否则直接读取存在的文件。

<IfModule rewrite_module>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfModule>

更多关于云服务器域名注册虚拟主机的问题,请访问西部数码官网:www.west.cn

赞(0)
声明:本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8306;邮箱:fanjiao@west.cn。本站原创内容未经允许不得转载,或转载时需注明出处:西部数码知识库 » php伪静态后html不能访问怎么办

登录

找回密码

注册