Apache 环境下设置 UC Home 地址伪静态 附 URL Rewrite 规则

UCHome 的页面地址为什么要伪静态

我们为什么要给UChome设置伪静态,当我们看到 http://code.yijile.com/space.php?uid=1 时发现不是很美观,而且更适合程序员看,而且对于搜索引擎来说动态地址很不友好。相比 http://code.yijile.com/space-1.html 就美观多了,而且搜索引擎会把它看出一个文件,相对动态地址权重也要高
如果给UCHome开启伪静态首先我们要在【设置】–【高级管理】–【站点设置】–【URL Rewrite】(飞机直达/admincp.php?ac=config)

Apache Web Server+虚拟主机的URL Rewrite规则

在UCHome根目录下新建.htaccess文件(本身没有哦)然后添加下面规则。
需注意如果UCHome安装在子目录下那么就需要修改下规则,将RewriteBase /后面添加子目录名称,例如home,那么规则应该是这样RewriteBase /home

1
2
3
4
5
RewriteEngine On 
RewriteBase /
RewriteRule ^(space|network)\-(.+)\.html$ $1.php?rewrite=$2 [L]
RewriteRule ^(space|network)\.html$ $1.php [L]
RewriteRule ^([0-9]+)$ space.php?uid=$1 [L]

Apache Web Server+独立主机的URL Rewrite规则

在 Apache 配置文件(通常就是 conf/httpd.conf )中加入如下代码:如果没有生效尝试重启Apache。
需要注意如果UCHome并不是安装在更目录,那么就需要修改下下面规则,将_RewriteRule ^/_后面添加子目录名称,如home那么规则就应该是这样写的**RewriteRule ^/home/(space|network)-(.+).html$ /$1.php?rewrite=$2 [L] **然后以此类推修改后面2条规则。

1
2
3
4
RewriteEngine On 
RewriteRule ^/(space|network)\-(.+)\.html$ /$1.php?rewrite=$2 [L]
RewriteRule ^/(space|network)\.html$ /$1.php [L]
RewriteRule ^/([0-9]+)$ /space.php?uid=$1 [L]

Apache Web Server+虚拟主机/独立主机规则大致类似,请勿混淆。如果写好规则发现还不是伪静态那么去后台检查是否打开URL Rewrite功能,具体页面 http://你的域名(若是安装在子目录请写完整)/admincp.php?ac=config

Relay Tips: 一极乐https://yijile.com/log/340/