簡體   English   中英

PHP CLI-通過網站URL進行重寫規則

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM