Php 动态链接到静态链接?
在stackoverflow中,页面url如下 但是当我们使用php创建网页时,它很可能有一个url,如 www,somewebsite.com/mypage?someid=123 然后显示内容 我想知道如何转换 www.somewebsite.com/mypage?someid=123 进入 www.somewebsite.com/mypage/some\u page\u link\u here\u哪个是静态的 有人知道怎么做吗?我尝试先搜索这个问题,但它显示了c/c++/java链接:| 编辑: 我尝试了一些youtube视频,我的hAccess代码是Php 动态链接到静态链接?,php,get,dynamic-pages,static-pages,Php,Get,Dynamic Pages,Static Pages,在stackoverflow中,页面url如下 但是当我们使用php创建网页时,它很可能有一个url,如 www,somewebsite.com/mypage?someid=123 然后显示内容 我想知道如何转换 www.somewebsite.com/mypage?someid=123 进入 www.somewebsite.com/mypage/some\u page\u link\u here\u哪个是静态的 有人知道怎么做吗?我尝试先搜索这个问题,但它显示了c/c++/java链接:|
重新启动发动机
重写秒%(请求URI)查找/([0-9]+)/
重写规则find(.*)//find.php?id=$1 这将使一些url像
something/find.php?id=11 进入
某物/find/11 .htaccess文件位于我网站的根目录下。但它仍然失败。 我做错什么了吗?尝试搜索“使用htaccess更改url” 编辑.htaccess文件:
RewriteRule ^mypage/(A-Za-z0-9_+]) page.php?post_uri=$1
这叫做url重写。对于ApacheWeb服务器,您可以通过使用mod_重写扩展来实现这一点。开发人员通常使用
.htaccess
文件向该模块提供配置指令
执行url重写的简单.htaccess条目如下所示,它向名为someother.html
的文件发送流量
RewriteEngine on
RewriteRule ^$ /someother.html
框架进行路由的最常见的方法之一是将到达web应用程序的所有流量路由到控制器。然后分析
REQUEST\u URI
,并用php进行路由。这使得路由的执行更加动态,而不必在.htaccess
文件上静态地提供每个规则。许多CMS和web编程框架支持实现这样的用户(和搜索引擎)友好链接
在最低级别上,您可以使用所有服务器上的URL重写功能
如果使用Apache服务器,则必须编辑.htaccess文件;对于IIS(Windows server),请使用web.config文件
谷歌url重写apache或url重写IIS
更新:
例如,请参见此解决方案(借用自)。当然,您可以将index.php、图像等替换为您想要的任何内容
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
更新2-说明
至于更深入的解释,我发现了这篇关于该主题的精彩介绍/教程:
希望这比上面无法解释的例子更有意义:)
例如
www.somewebsite.com/mypage/dynamic-link-to-static-link
.htaccess部分
重写规则^mypage/(A-Za-z0-9_uu+])page.php?post_uURI=$1[QSA]
page.php部分
$post_uri=$mysqli->real_escape_字符串($\u GET['post_uri'])
//然后可以通过变量$post_uri找到行
RewriteEngine on
RewriteCond %{REQUEST_URI} find/([0-9]+)$
RewriteRule /find.php?id=$1
试试这个%(REQUEST\u URI)=>%{REQUEST\u URI}我完全同意你的看法,它需要更多的解释。。。所以我做了一些搜索,找到了关于这个主题的优秀教程;链接添加到答案。