1.用docker 创建php:8.0-fpm镜像的容器,在用apt-get install composer的时候会报错,提示php有些扩展没有打开。所以最好别用php-fpm景象的容器,用没有装过php的镜像容器,用apt安装composer 估计会自动安装依赖php。不过这样的话php版本就不受自己控制了。
(安装了composer之后别忘了改成国内镜像,要不然会比价慢)
2.如果在容器里报错:
那么 apt-get install php-xml 一下。可能缺少php-xml这个扩展。()
3.laravel对部署有点要求,如9.x文档里写着:
Laravel 框架对系统有一些要求,请确保你的 Web 服务器至少满足以下 PHP 版本及扩展需求。
4.composer [InvalidArgumentException] Could not find package laravel/laravel with stability stable. 见文章:composer [InvalidArgumentException] Could not find package laravel/laravel with stability stable._FourAu的博客-CSDN博客
5.在用nginx,php-fpm镜像创建不同容器互相使用同一个network配合搭建web运行环境时,nginx配置文件里
location ~\php{
root (php-fpm 容器的web目录)
fastcgi_pass (php-fpm容器的ip地址或者network-alias地址):9000
fastcgi_param SCRIPT_FILENAME (php-fpm 容器的web目录)/$fastcgi_script_name
}
6.Laravel路由不生效,404,除了/ 都不行,关于nginx环境下laravel除了默认路由都出现404报错的处理方法
打开nginx的配置文件,在location中添加上try_files $uri $uri/ /index.php?$query_string;;这样laravel在route中的路由就可以正常访问了
location / {
root /var/nginx/html/123.com;
index index.html index.htm index.php;
try_files $uri $uri/ /index.php$is_args$query_string;
}
try_files $uri $uri/ /index.php$is_args$query_string;(/index.php这里不是/var/www/html这样的绝对目录路径,而且webroot对应的根目录)