[英]PHP CLI - Pass website URL for rewrite rules
我在PHP5.5上使用Laravel。 在/app/routes.php
内部,我可以定义当有人访问时的路由,例如www.website.com/route
。 然后通过.htaccess
将其重新写入index.php
文件。
当我通过命令行进行故障排除时,例如:
strace -FTs 1000 php index.php
我无法获得特定路线的服务,因此很难对发生的事情进行故障排除。 这也可以转换为使用index.php
路由请求的任何其他系统(例如Wordpress)
所以我的问题是,有没有办法让我通过命令行运行以下内容:
php index.php --request-path="/route"
的工作方式与
http://www.website.com/route
如果仅调用index.php文件,则无法获得Laravel之类的框架依靠其自身进行初始化的完整Web服务器环境(尤其是$_SERVER
和$_REQUEST
变量的内容),这就是为什么它不起作用的原因。
如果没有正在运行的用于开发的Apache,则应考虑运行PHP的本地开发服务器:
http://php.net/manual/en/features.commandline.webserver.php
然后通过本地Web服务器发出请求,以确保为框架正确初始化您的环境。
关于这似乎是您的实际目标,如果您尝试调试和逐步执行代码,请研究PHP的XDebug扩展,并使用支持调试连接的IDE(例如Eclipse(免费)或PhpStorm(付费))因此您可以设置断点并以这种方式逐步执行代码。
对于Eclipse: http : //wiki.eclipse.org/Debugging_using_XDebug
对于PhpStorm: http : //confluence.jetbrains.com/display/PhpStorm/Zero-configuration+Web+Application+Debugging+with+Xdebug+and+PhpStorm
XDebug还包括性能分析工具和其他工具,可以在应用程序运行时转储到日志中,然后您也可以将其引入Valgrind或其他工具中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.