Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Laravel 5中,公共资产的本地路径是什么?(使用server.php)_Php_Laravel_Localhost - Fatal编程技术网

在Laravel 5中,公共资产的本地路径是什么?(使用server.php)

在Laravel 5中,公共资产的本地路径是什么?(使用server.php),php,laravel,localhost,Php,Laravel,Localhost,我第一次使用Laravel,但我的本地主机服务器出现了问题 部署站点后,我可以查看在以下地址上载的图像: www.mysite.com/storage/img/1.jpg mysite.com已设置为Laravels公用文件夹。访问mysite.com url将显示laravel欢迎页面 现在,对于localhost,它使用以下命令运行,从而运行Laravels服务器脚本: php-S localhost:4000 server.php 访问localhost:4000 url将显示larave

我第一次使用Laravel,但我的本地主机服务器出现了问题

部署站点后,我可以查看在以下地址上载的图像:

www.mysite.com/storage/img/1.jpg

mysite.com已设置为Laravels公用文件夹。访问mysite.com url将显示laravel欢迎页面

现在,对于localhost,它使用以下命令运行,从而运行Laravels服务器脚本:

php-S localhost:4000 server.php

访问localhost:4000 url将显示laravel欢迎页面。将此url附加到“我的命名路由”后,将按预期运行Laravel路由。但是我无法在任何地址访问我提到的.jpg!即使在laravel视图中被引用

^返回404未找到页

^再次返回laravel欢迎页面

在使用server.php脚本设置本地环境时,如何引用资产或公用文件夹中的任何内容?这些路径在视图中既不是绝对路径,也不是相对路径。提前谢谢

我的(未编辑的)server.php脚本如下所示:)

来自

存储目录包含基于文件的已编译刀片模板 会话、文件缓存和框架生成的其他文件


您的{app}/storage文件夹可能与您的{app}/public/storage文件夹存在某种冲突?考虑使用另一个名字来“存储”上传的文件吗?

你做的不对,因为在LaaVele5中,刀片的存储是在资源中的,并且在那里你还会发现它的文件夹里面的图像文件夹。我建议你使用这种结构。
另外,请不要使用php-S作为服务器,而是使用像mamp、wamp或xampp这样的环境作为服务器。您将遇到权限问题和所有权问题。希望有帮助。

公用目录中有存储文件夹吗?有/public/storage和/public/storage/img for images很好,但这不仅仅是public/storage for文件夹。我在/public的根目录下还有其他文件夹,其行为方式与其他文件夹相同,例如/public/website1/index.html。这在生产服务器上非常有效,但无论我做什么,都无法在本地主机服务器上找到!那么让我告诉你:你选择了一个可怕的第一个例子,为什么你不能访问一些给定的文件夹。。。您用来访问/public/website1/index.html的url是什么?website1是一个位于公用文件夹中的非laravel网站。这方面的原因在我以前的许多帖子中都有介绍。我认为公共资产应该存储在公共文件夹中?你也可以存储在那里。但作为一家公司,我们不会过多地使用它。我们使用刀片服务器资源中的资产。例如{!!HTML::style('resources/admin/assets/css/icons/icons.min.css')!!}要从中获取样式,{!!HTML::script('resources/admin/assets/plugins/modernizr/modernizr-2.6.2-respond-1.1.0.min.js')脚本,用于图像。当遵从HTML时,{{{{asset('admin/img/avatars/avatar/avatar5_big.png')}的路径是什么?或者换一种说法,从http://localhost/的路径是什么?找不到或无法访问(当然,我已将文件复制到该文件夹中)我只是在刀片视图中看到一个损坏的图像图标。
 <?php

/**
 * Laravel - A PHP Framework For Web Artisans
 *
 * @package  Laravel
 * @author   Taylor Otwell <taylorotwell@gmail.com>
 */

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

if ($uri !== '/' && file_exists(__DIR__.'/public'.$uri)) {
    return false;
}

require_once __DIR__.'/public/index.php';