我意外地通过Composer在user/name
中安装了我的Laravel项目,而不是htdocs
文件夹。
htdocs
文件夹吗?答案 0 :(得分:6)
通常,使用Composer创建的项目自包含,并且不依赖于它在文件系统上的位置(我不是特别熟悉Laravel,但我没有任何理由怀疑这里有不同的行为)。您可以毫无问题地移动/复制它们。
关于移动目录后插件无法加载的担忧:看看Composer如何生成它的自动加载器类映射(下面只是一个简短的摘录):
<?php
// autoload_classmap.php @generated by Composer
$vendorDir = dirname(dirname(__FILE__));
$baseDir = dirname($vendorDir);
return array(
'File_Iterator' => $vendorDir . '/phpunit/php-file-iterator/src/Iterator.php',
'File_Iterator_Facade' => $vendorDir . '/phpunit/php-file-iterator/src/Facade.php',
'File_Iterator_Factory' => $vendorDir . '/phpunit/php-file-iterator/src/Factory.php',
'PHPUnit_Exception' => $vendorDir . '/phpunit/phpunit/src/Exception.php',
// ...
正如您所看到的,自动加载器没有连接到任何固定的文件系统路径,因此即使是Composer自动生成的类加载器文件也可以在文件系统中轻松移动。
答案 1 :(得分:2)
我确实移动了它,它意外地破坏了,无法通过端点访问任何数据。 修复,在新项目中;
.env
文件。composer install
。php artisan key:generate
以在新文件夹的.env
文件中生成新密钥。这对我来说很好。
答案 2 :(得分:1)
如上所述,请确保移动所有文件,包括隐藏文件(例如:.env)
我必须清除配置缓存:
php artisan config:cache
为了安全清除其他缓存
php artisan cache:clear