首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >简单的网站结构RewriteRule for PHP参数

简单的网站结构RewriteRule for PHP参数
EN

Stack Overflow用户
提问于 2014-12-16 02:52:38
回答 1查看 91关注 0票数 1

我如何重写下面的示例?

www.domain-name.com/site-name/index.php?lang=en-us&page=home www.domain-name.com/site-name/index.php?lang=en-us&page=about www.domain-name.com/site-name/index.php?lang=pt-pt&page=inicio www.domain-name.com/site-name/index.php?lang=pt-pt&page=sobre

对此:

Www.doma-name.com/site-name/en-us/home.html www.domain-name.com/site-name/en-us/about.html www.domain-name.com/site-name/pt-pt/inicio.html www.domain-name.com/site-name/pt-pt/sobre.html

我设法获得了页面参数。这就是我所拥有的:

代码语言:javascript
运行
复制
<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /site-name/

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*?)/?$ index.php?page=$1 [L]
</IfModule>

我不知道如何为所有“页面”参数和regex添加.html,所以我很难弄清楚"lang“参数的"-”部分是如何工作的。我注意到当输入不正确的url时,网站会变得很奇怪。

稍后,它将有自己的域名,但我想从"RewriteBase /site- name /“改为"RewriteBase /”将修复它,对吗?

我不太知道它,但我认为一些旗帜也丢失了(为SEO的目的)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-12-16 02:55:56

您可以使用:

代码语言:javascript
运行
复制
<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /site-name/

    RewriteRule ^([^/]+)/(.+?)\.html?$ index.php?lang=$1&page=$2 [NC,L,QSA]
</IfModule>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27496757

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档