我在本地使用 php 运行 Apache 2.4。我的目标是每次发出请求时,它都会链接到项目文件夹的根目录,http://localhost/project_root/
例如:
http://localhost/project_root/
被请求并链接到 http://localhost/project_root/index.php
第二个例子:
http://localhost/project_root/foo/bar
将链接到 http://localhost/project_root/index.php
最终的想法是 http://localhost/project_root/index.php
处理资源的重定向和加载。
在此先致谢,欢迎提出任何建议。
最佳答案
对于这类事情,我在应用程序的根目录中放置了一个 .htaccess
文件:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d #Optional: Only if it's not a valid directory
RewriteCond %{REQUEST_FILENAME} !-f #Only if it's not a valid file
RewriteRule (.*) index.php?q=$1 [L,QSA]
这会将 url 的剩余部分作为 $_GET['q']
传递,并保留任何其他参数。
您需要确保在 Apache 中启用了 mod_rewrite
,并且在启用站点中将 AllowOverride 设置为 all
。
关于php - Apache PHP 项目根处理程序/前端 Controller 模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23418106/