WSL设置php开发环境

WSL设置php开发环境

相比于 docker 的繁琐,wsl 或许是在 windows 10 系统上开发php的好选择。目前免费的环境是 ubuntu20,centos 试过好像不太好用,就此记录一下。

购买ubuntu

因为是免费的,所以只要进入微软商店找到,下载安装即可,比较简单。

安装开发环境

打开 powershell
ubuntu2004.exe config –default-user root

查看版本命令
cat /etc/issue
应该显示
Ubuntu 20.04.xxxxx

进入系统,必须首先 apt update ,否则什么软件都不好装。

apt install nginx(nginx官网推荐的方法放最后)
/etc/init.d/nginx  start

apt install redis

apt install php7.4-fpm

假设需要安装php其他插件

apt install php7.4-memcache
apt install php7.4-mbstring
apt install php7.4-gd
apt install php7.4-dom
apt install php7.4-mysql
apt install php7.4-redis

需要注意,这里,只要新安装了php的插件,就需要重启php7.4-fpm的服务。

/etc/init.d/php7.4-fpm start


apt install mysql-server
apt install mysql-client
/etc/init.d/mysql start
/etc/init.d/redis-server start


curl -o /usr/local/bin/composer https://mirrors.aliyun.com/composer/composer.phar
chmod +x /usr/local/bin/composer

需要在配置文件加 ~/.bashrc
export COMPOSER_ALLOW_SUPERUSER=1

然后命令行
composer -V
可以测试 composer 是否安装成功。

apt install net-tools
apt install unzip

netstat -antup

如何修改MySQL监听IP地址

Mysql默认在本地环路地址127.0.0.1的3306端口监听,要使用其它IP地址需要修改配置文件。

1.编辑/etc/my.cnf

在[mysqld]节中增加下面一行:

bind-address=0.0.0.0 #全部地址或者指定的ip地址

2.重启服务

service mysqld restart

3、然后必须修改mysql的密码,否则客户端无法登录。
先在命令行

 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

杂项和 nginx 设置

ssh-keygen -t rsa -b 4096
然后修改成自己的,注意文件权限。

拉代码到本地。

composer config –global github-oauth.github.com ghp_xxxxxxxxxxxx

mount -t drvfs F: /mnt/myshare

再次修改nginx
vim /etc/nginx/sites-enabled/default
或者也可以删除这个default 文件
把所有的虚拟主机都放conf.d 或许更加习惯。

   charset  utf-8;

      location / {
        try_files $uri $uri/ /index.php?$query_string;
      }

      location ~ \.php$ {
        #fastcgi_pass 127.0.0.1:9000;
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
  #      fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
        include snippets/fastcgi-php.conf;
        #include fastcgi_params;
      }

终于,看见 laravel 的界面了。

上传文件的大小限制

这是nginx 设置在 http 项内。
client_max_body_size 10m;

php.ini 需要设置
post_max_size=10m
upload_max_filesize=10m

nginx 官网推荐的方式

echo $'deb https://nginx.org/packages/ubuntu/ focal nginx
deb-src https://nginx.org/packages/ubuntu/ focal nginx ' > /etc/apt/sources.list.d/nginx.list
apt update
apt install nginx
本作品采用《CC 协议》,转载必须注明作者和本文链接
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 18

我开发运行环境都是在子系统,很好用,方便!

2年前 评论
yyy123456 (楼主) 2年前

Sail+Docker Desktop 没啥繁琐 再者 centos可以自己下载装到wsl

2年前 评论

我直接在里面装了宝塔面板

2年前 评论

但是这种的话怎么访问本地文件呢?

2年前 评论
yyy123456 (楼主) 2年前
MArtian (作者) 2年前

配合vscode,挺好用的

2年前 评论

win11家庭版的支持不?

2年前 评论

在wsl运行项目很慢怎么解决

2年前 评论
yyy123456 (楼主) 2年前
yyy123456 (楼主) 2年前
yyy123456 (楼主) 2年前
yyy123456 (楼主) 2年前
腹肌会有的 (作者) 2年前
懒到天荒地老 2年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
未填写
文章
51
粉丝
7
喜欢
60
收藏
94
排名:588
访问:1.3 万
私信
所有博文
社区赞助商