我们如何编写这样的 PHP 脚本呢?
有时我们会看到包含这样的URL的网站:
somesite.com/123.php
somesite.com/124.php
somesite.com/125.php
'.php'之前的数字是Mysql查询
somesite.com/123的ID。 php = somesite.com/file.php?id=123。
我注意到这些文件 [123.php,124.php,125.php] 并未真正存储在服务器中。
我们怎样才能做到呢?
Sometimes we see websites that contain URLs like these:
somesite.com/123.php
somesite.com/124.php
somesite.com/125.php
the numbers before '.php' are the IDs of Mysql Query
somesite.com/123.php = somesite.com/file.php?id=123.
I noticed that these file [123.php,124.php,125.php] are not really stored in the server.
How can we do it ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
...使用apache的重写规则,通常放置在< code>.htaccess 文件。
...using rewriting rules for apache, which normally are placed in
.htaccess
files.在您的具体示例中,您将在 .htaccess 文件中使用重写规则,如下所示:
In your specific example, you'd use a rewrite rule in the .htaccess file like so:
使用 mod_rewrite 重写规则的 .htaccess 文件。
有几个链接可以帮助您入门:
A深入了解 Apache 的 mod_rewrite
URL 重写指南
URL 重写初学者指南
祝你好运!
.htaccess files with rewrite rules using mod_rewrite.
A couple of links to get you started:
A deeper look at mod_rewrite for Apache
URL Rewriting Guide
A beginner's guide to URL Rewriting
Good luck!
您必须使用一些带有 .htaccess 文件的 http 重定向(在 Linux 上)
You have to employ some http redirects with an .htaccess file (on linux)
您需要的是 Apache 中的 mod_rewrite 模块(或者 IIS 中的等效模块,如果是这种情况)和 .htaccess 文件。
如果您好奇,可以在这里查看文档: http://httpd.apache.org /docs/2.0/misc/rewriteguide.html
这里有一个示例规则,应该可以执行您想要的操作(将 everything.php 重定向到 index.php?id=anything):
What you want is the mod_rewrite module in Apache (or the IIS equivalent if that's the case) and the .htaccess file.
The documentation is here if you're curious: http://httpd.apache.org/docs/2.0/misc/rewriteguide.html
And here's a sample rule for you that should do what you want (will redirect anything.php to index.php?id=anything):