簡體   English   中英

Laravel 4中server.php文件的用途是什么?

[英]What is the purpose of the server.php file in Laravel 4?

在Laravel 4的/app/目錄中,有一個名為server.php的文件。 該文件的內容如下所示:

<?php

$uri = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);

$uri = urldecode($uri);

$paths = require __DIR__.'/bootstrap/paths.php';

$requested = $paths['public'].$uri;

// This file allows us to emulate Apache's "mod_rewrite" functionality from the
// built-in PHP web server. This provides a convenient way to test a Laravel
// application without having installed a "real" web server software here.
if ($uri !== '/' and file_exists($requested))
{
    return false;
}

require_once $paths['public'].'/index.php';

似乎這個文件在某種程度上用於模仿Apache的mod_rewrite功能,但是我在Laravel文檔中找不到任何提及它或它的用法。

我目前正在嘗試在我無法管理的IIS服務器上使用Laravel。 我沒有能力修改IIS上的URL重寫模塊選項(我將來會這樣),但是如果可能的話,我想立即開始使用框架。 這個server.php文件似乎可能是一個止損解決方案來做到這一點。

任何人都可以了解server.php文件的用途,以及如果真的要模仿Apache的mod_rewrite功能,如何使用/激活它?

它用於PHP的內部Web服務器 ,它是在PHP 5.4中引入的。

根據PHP手冊:

此Web服務器僅用於開發目的,不應在生產中使用。

我不能強調這一點。

如果您想將它與Laravel server.php文件一起使用,您可以使用以下命令(從Laravel目錄的根目錄)前往cli並啟動服務器:

php -S localhost:8000 server.php

然后,您應該可以在Web瀏覽器中訪問localhost:8000並開始使用Laravel應用程序。

另外,正如Anand Capur所提到的,你可以用以下方式啟動服務器:

php artisan serve

最終,這只是為您運行前面提到的php -S命令。

您可以選擇通過以下操作指定hostport

php artisan serve --port=8080 --host=local.dev

與所有artisan命令一樣,您可以通過執行以下操作找到此信息和其他信息:

php artisan serve --help

您也可以使用該命令

artisan serve ,它將運行適當的命令來啟動開發服務器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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