Laravel 在学习教程中,总是遇到的一些坑(记录一下解决方法)

遇到这些问题我的内心是崩溃的

以下方法试了个遍,问题频出,最后切换到这个镜像问题解决

composer config -g repo.packagist composer http://pkg.phpcomposer.com/repo/packagist/
问题解决的那一刻我松了一口气

Use composer self-update --rollback to return to version 1.9.1

Homestead 配置好后访问项目出现 No input file specified

这个错误的原因是文件夹映射没成功。

  1. 确保 map 和 to 路径的绝对准确,虚拟机里的 Linux 系统区分大小写;
  2. 确定路径没问题以后,主机里 vagrant provision && vagrant reload 意为「应用 Homestead.yaml 配置」和「重启虚拟机」。

执行上面命令时报错:composer Failed to enable crypto failed to open stream: operation failed

Failed to enable crypto failed to open stream: operation failed 解决方法,更改 Packagist 为国内镜像,不知道会不会对后续操作有影响,反正现在是可以了: composer config -g repo.packagist composer https://packagist.phpcomposer.com

composer错误:zlib_decode():data error 解决方法

最后取消阿里云镜像解决问题

composer config -g --unset repos.packagist
网上舒出现的原因一般都是网络问题,网上说执行 composer self-update 可以试试

所以大家可以回想下最近最composer的修改相关的,对症下药,不过阿里云的镜像确实很快,如果想使用阿里云的镜像执行以下命令

全局配置(推荐)
所有项目都会使用该镜像地址:

composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
 

取消配置:

composer config -g --unset repos.packagist
 

项目配置
仅修改当前工程配置,仅当前工程可使用该镜像地址:

composer config repo.packagist composer https://mirrors.aliyun.com/composer/
 

取消配置:

composer config --unset repos.packagist
 

调试
composer 命令增加 -vvv 可输出详细的信息,命令如下:

composer -vvv require alibabacloud/sdk
 

问题:前两天安装了不少扩展包,后来composer安装扩展包时出错了

Allowed memory size of 1610612736 bytes exhausted (tried to allocate 67108864 bytes)

可能的解决办法:

php 已经设置 -1 不限定内存了,估计是操作系统级别报的了。
经过多翻测试后发现,别非特定的包造成的,而是包数量一多,可能是引用的达到一定的值后就报错了。
使用 composer install 却不会报出任何错误。

首先修改 /etc/php/7.3/fpm/php.ini 中的 memory_limit = 2048M;再修改 /etc/php/7.3/cli/php.ini 中的 memory_limit = 2048M

 

前端流使用中的问题


按着教程里的 yarn 安装总是会出现错误 的解决方法 (win10 环境下) 一定到按着以下步骤来:

  1. 第零步(如果遇到错误的时候执行,否则请跳过):
    $ rm -rf node_modules
  2. 第一步(国内网络环境原因,必须修改):
    .$ yarn config set registry  https://registry.npm.taobao.org
  3. 第二步(一定要加上 -- no-bin-links):
    $ yarn install --no-bin-links
  4. 第三步修改项目根目录下的 package.json 文件:
    "scripts":{
    "dev": "npm run development",
    "development": "NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "watch": "NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "watch-poll": "npm run watch -- --watch-poll",
    "hot": "NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
    "prod": "npm run production",
    "production": "NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
    },
  5. 运行 npm run watch-poll

 


在通过 yarn 引入 sweetalert 以及 china-area-data 的时候 (在 后面一定要加上 --no-bin-links

$ yarn add china-area-data --no-bin-links
$ yarn add sweetalert --no-bin-links


如果按着教程写的 在运行 npm run watch-poll 编译前端的时候 ,会出现各种找不到的问题,在 win 环境下 必须 在后面追加 --no-bin-links

在文章中的这段话:

如果按着教程写的 在运行 npm run watch-poll 编译前端的时候 ,会出现各种找不到的问题,在 win 环境下 必须 在后面追加 --no-bin-links

 

你可能感兴趣的:(laravel,Linux)