也许它会显得很简单的问题,我的网站的网址是非常写的,所以我想重写它们。 所以我准备激活mod_rewrite的。 现在的问题是:
假设我的网址开关从site_url/index.php?page=mypage&type=mytype
到site_url/mypage/mytype
,如果刷新页面会发生什么,是否有必要把.htaccess文件中,用于转移到重写逆过程?
也许它会显得很简单的问题,我的网站的网址是非常写的,所以我想重写它们。 所以我准备激活mod_rewrite的。 现在的问题是:
假设我的网址开关从site_url/index.php?page=mypage&type=mytype
到site_url/mypage/mytype
,如果刷新页面会发生什么,是否有必要把.htaccess文件中,用于转移到重写逆过程?
你需要重定向和重写的组合。 URL重写过程的纲要草案将是:
.php
,301/302请求重定向到它的搜索引擎友好的版本。 这将改变在浏览器地址栏中的地址。 这里是一个做了以上的两个重写规则一个很简单的例子:
#
# redirect /index.php?page=somepage&type=sometype to friendly url
#
RewriteCond %{THE_REQUEST} /index\.php
RewriteCond %{QUERY_STRING} page=(\w+)&type=(\w+)
RewriteRule ^index\.php$ /%1/%2? [R,L]
#
# rewrite /somepage/sometype to index.php
#
RewriteRule ^(\w+)/(\w+)$ index.php?page=$1&type=$2
在.htaccess,你应该做它映射前进...
^/(mypage)/(mytype) to index.php?page=$1&type=$2
但反过来,应单独留在家中。 所以直接请求site_url/index.php?page=mypage&type=mytype
只会原样传递。
因此,刷新也不会改变任何东西。