我是PHP的新手。我正在开发一个网站(截至目前有静态内容,尚未涉及数据库)。网址是这样的,例如:localhost/main/listcontent/content1#abc.php
我想隐藏整个路径并将其替换为以下内容:localhost/main?sub=1&brch=1
有什么建议吗?
PS:我已经用谷歌搜索过了,但不明白如何进行。
提前感谢!
一种方法是使用.htaccess规则:
RewriteEngine on
Options +FollowSymLinks
RewriteBase /
RewriteRule !('.xpi|'.xml|'.txt|'.air|'.exe|'.zip|'.pdf|'.ico|'.gif|'.jpg|'.png|'.jpeg|'.js|'.swf|'.css|'.php|'.html)$ index_mod_rewrite.php [L]
在index_mod_rewrite.php
内部,您将当前 URL 解析为您创建的映射(请参阅 $_SERVER["REQUEST_URI"]),然后require
必要的.php文件。
另一种方法是手动(或使用脚本)将所有映射添加到 .htacccess。
如果您使用的是 Apache ,上述内容是有效的。 .htaccess 是您放置在任何文件夹中的文件,它会影响当前文件夹和子文件夹。路径上的后续 .htacccess 文件可以更改配置,甚至停止 mod 重写(如果您选择特定文件夹)。
为了确保安全起见,我还在这里添加了对最多.htaccess文件的另一个要求(禁用目录列表的安全功能):
options All -Indexes
IndexIgnore *