[英]Clean URLs in PHP without mod_rewrite
我正在为我为PHP客户端构建的网站开发后端(我很少使用),该网站已基本完成。 我主要是一个Rails开发人员,所以我很难不去使用一些杂乱无章的CRUD设置,并且正在尝试清理URL。
我希望自己的网址是这样的:
http://www.example.com/videos/name-of-video/
我打算只从$_SERVER['PHP_SELF']
中获取网址的最后一部分,并使用它来搜索数据库,但是我想做的是将index.php文件放在http://www.example中.com / videos /目录,并在我明确指出某人指向http://www.example.com/videos/name-of-video/时使用它(如果有必要的话)。
如果将index.php放在/ videos /目录中,还是可以使用? 是否可以在不搞乱htaccess的情况下做?
对不起,我的解释很可悲。 我希望这是有道理的。
谢谢!
有一些没有RewriteRule的选项。 并非没有.htaccess混乱。
首先,您可以命名一个没有扩展名的PHP脚本,即video
而不是video.php
,然后通过ForceType
或DefaultType
设置实际文件类型。 因此,PHP解释器仍会选择它。 路径将显示在$_SERVER['PATH_INFO'
同样,启用的+MultiViews
允许PHP脚本不具有扩展名。
最后,可以使用ErrorDocument
处理程序代替真正的RewriteRule。 但是,它带来了许多缺点。
index.php
本身不会在伪路径中获取任何随机文件名。 唯一可行的方法是使用诸如http://www.example.com/videos/?name-of-video/
所以不行。 没有一些配置,就没有带有模仿目录的漂亮URL。
据我所知,如果不触摸.htaccess,则无法进行此操作。 当您写URL http://www.example.com/videos/name-of-video/时,您的服务器肯定会在video-name文件夹中查找index.php文件。 不存在。
如果没有.htaccess就可以完成此任务,那么就永远不会使用它们。 顺便说一句,为什么你不想使用.htaccess .. ??
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.