也许这似乎是一个非常简单的问题,我的网站的网址写得非常好,所以我想重写它们。所以我准备激活mod_rewrite。问题如下:
假设我的网址从site_url/index.php?page=mypage&type=mytype
切换到site_url/mypage/mytype
,如果刷新页面会发生什么情况,是否有必要在.htaccess文件中插入进行重写的逆转过程?
答案 0 :(得分:2)
您需要重定向和重写的组合。 URL重写过程的草案大纲是:
.php
,则301/302会将请求重定向到其SEO友好版本。这将更改浏览器地址栏中的地址。这是一个非常基本的重写规则示例,可以执行上述两种操作:
#
# 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
答案 1 :(得分:0)
在.htaccess中,你应该做一个映射的前锋......
^/(mypage)/(mytype) to index.php?page=$1&type=$2
但反过来应该保持不变。因此,对site_url/index.php?page=mypage&type=mytype
的直接请求将按原样传递。
因此,刷新不会改变任何事情。