Php 有没有隐藏URL复杂性的好方法?
我正在使用PHP和TWIG构建一个网站,我将代码组织为: 类文件夹:用于php类 lib文件夹:用于非类php文件 模板文件夹:用于细枝模板 和index.php文件 例如,当我想要包含注册页面的链接时,该链接将是:domain name/lib/register.php 问题是:有没有什么好方法可以对链接隐藏文件组织 例如,在不更改我的文件组织和保留在url中发送get参数的能力的情况下,使链接类似于:域名/注册Php 有没有隐藏URL复杂性的好方法?,php,twig,Php,Twig,我正在使用PHP和TWIG构建一个网站,我将代码组织为: 类文件夹:用于php类 lib文件夹:用于非类php文件 模板文件夹:用于细枝模板 和index.php文件 例如,当我想要包含注册页面的链接时,该链接将是:domain name/lib/register.php 问题是:有没有什么好方法可以对链接隐藏文件组织 例如,在不更改我的文件组织和保留在url中发送get参数的能力的情况下,使链接类似于:域名/注册 谢谢如果您使用的是apache,您可以将mod_rewrite模块与.htacc
谢谢如果您使用的是apache,您可以将
mod_rewrite
模块与.htaccess
文件一起使用
对于其他Web服务器,也存在类似的模块和方法。下面是我将使用的htaccess文件示例。在“register/”之后输入的文件夹结构被视为转发到register.php的变量。QSA标志将允许您在需要时将其他GET变量视为变量。(例如/寄存器/某物/?某些变量=1) 当您知道要为哪些页面重写多少变量时,这适用于特定情况。换言之,以下仅适用于两个变量/点(例如/registers/var1/var2/) 希望有帮助
############################################
## ENABLE REWRITES
RewriteEngine on
Options +FollowSymLinks
## EXAMPLE WITH 1 VAR
RewriteRule ^register/([A-Za-z0-9-]+)/ lib/register.php?var1=$1 [L,QSA]
## EXAMPLE WITH 2 VAR
RewriteRule ^register/([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/ lib/register.php?var1=$1&var2=$2 [L,QSA]
## ALSO GOOD TO HAVE ERROR DOCS REWRITE
ErrorDocument 404 oops/