hybbs伪静态安装方案

admin   ·   发表于 10个月前   ·   实用教程

伪静态是什么?请先看一下您自己的网站,随便进入一个帖子。

浏览器的地址 是不是呈现: http:/***/?t/1.html

可见,地址中存在了一个 ?号, 而作为开发者来说 都知道 ?号是传递参数数据到服务器的, 但是默认链接却占用了

如果我们想传入参数  id=x  那么URL地址将会变成

http:/***/?t/1.html?id=x

可见在URL后面追加了 ?id=x 

如果我们默认网站不处理这种出现多个? 符号的将会出现 SEO 问题

而且开发也会造成问题 因为URL地址出现了 两个问号,所以从里面取出参数 就会出现错误。

虽然HYPHP可以处理多个?号带来的错误  但是SEO 搜索引擎 或者一些 微信 QQ 支付宝等 回调类内容 将无法开发。

比如 QQ互联登录插件,  为什么必须使用伪静态,原因是回调的URL 不支持 ? 号  不支持回调自定义参数,所以就会在申请的时候 填入回调地址 无法通过的问题!


所以我们要做的 就是去掉 ? 号



请根据自己的环境选择伪静态规则.

有的朋友不知道自己是什么环境的, 可以通过管理员后台首页查看



通常大家用的环境都是 IIS, APACHE ,NGINX  (还是补充个小写吧  iis, apache, nginx)

大部分国内空间用的都是 IIS 以及 APACHE 

而且都有切换PHP版本的功能, 我建议大家将PHP版本提升到最高. 



Apache 伪静态 

Apache的伪静态是最简单 易用的. 

直接在网站根目录下创建文件:    .htaccess  (注意: 不要在前面加什么 x.htaccess . 该文件不需要文件名 只需要后缀)


写入内容: 

<IfModule mod_rewrite.c>
  Options +FollowSymlinks
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ index.php?s=$1 [QSA,PT,L]
</IfModule>

如果完成以上操作 依然无法使用. 那可能是你的Apache为开启伪静态模块

在Apache 安装目录中找到 conf/httpd.conf 文件

在该文件中搜索 :   mod_rewrite  

即可找到关键字

#LoadModule rewrite_module modules/mod_rewrite.so

如果你看到 前面有一个# 号 说明伪静态模块并未开启

所以你需要将 #号去除, 保存文件 重启Apache进程即可!  不会重启Apache的 请重启主机吧!


Nginx


Nginx的伪静态安装

location ~* (runtime|application)/{
	return 403;
}
location / {
	if (!-e $request_filename){
		rewrite  ^(.*)$  /index.php?s=$1  last;   break;
	}
}





配置完成 请回到管理员后台首页 查看服务器信息

如果提示  伪静态条件 为支持. 则可以开启伪静态

去掉?号  打开文件 /Conf/config.php 找到内容: //'REWRITE'=>1,//伪静态规则

去掉前面的 //  

改为下图所示内容

保存文件即可!

伪静态安装完毕

0 条回复   |  直到 10个月前 | 168 次浏览
登录后才可发表内容