在Laravel中,不同的网址丢失了样式

时间:2014-01-25 19:55:30

标签: php iis laravel web.config-transform

我在我的网络项目中使用Laravel。我为未经身份验证的用户指定了这些路由。

Route::group(array("before" => "guest"), function() {
    // Show the login page for the user
    Route::get("/", array("as" => "homepage", function() {
        return View::make("unauthenticated.login");
    }));

    Route::get("/account/login", array("as" => "account-login-get", function() {
        return View::make("unauthenticated.login");
    }));
});

如果我访问/,我的页面看起来是正确的。如果我尝试访问/account/login,我就不会获得样式表。我认为这与重写有关。我在Windows Server 2012上使用IIS,我在公共文件夹中有这种web.config文件。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="Move to index.php">
                    <match url=".*" />
                    <conditions>
                        <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
                        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
                    </conditions>
                    <action type="Rewrite" url="index.php/{R:0}" logRewrittenUrl="true" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

我有两个项目。其中一个有效,但另一个没有。可能有什么问题?

1 个答案:

答案 0 :(得分:1)

使用URL::asset()链接到样式表。 因为在/中它链接到(例如)example.com/css/style.css 如果您在/account/login,它会在example.com/account/login/css/style.css

中查找样式表

我在主刀片模板中使用<link rel="stylesheet" href="{{ URL::asset('css/style.min.css') }}"/>

希望有所帮助