【WSL】二 快速搭建php环境

979 阅读3分钟

第二种方法可以参考。zhuanlan.zhihu.com/p/74399330

第一步:安装nginx

查找文件位置如已安装应先删除:

whereis apache php nginx mysql

安装:

sudo apt-get update
sudo apt install nginx
sudo nginx -t # 查看nginx配置文件

Ubuntu安装之后的文件结构大致为:

1)所有的配置文件都在/etc/nginx下,并且每个虚拟主机已经安排在了/etc/nginx/sites-available下

2)程序文件在/usr/sbin/nginx

3)日志放在了/var/log/nginx中

4)并已经在/etc/init.d/下创建了启动脚本nginx

5)默认的虚拟主机的目录设置在了/var/www/nginx-default (有的版本默认的虚拟主机的目录设置在了/var/www, 请参考/etc/nginx/sites-available里的配置)

常用命令:

/usr/local/nginx/sbin/nginx  #启动服务 也写作sudo service nginx start
/usr/local/nginx/sbin/nginx  -s stop #停止服务也写作 sudo service nginx stop
/usr/local/nginx/sbin/nginx  -s reload #重新加载配置 也写作 sudo service nginx reload
/usr/local/nginx/sbin/nginx -t # 测试配置文件是否正确 也写作 sudo service nginx configtest

启动nginx后在浏览器访问本地ip或者127.0.0.1出现下图则安装成功

修改nginx配置:

sudo vim /etc/nginx/nginx.conf

注释掉这一行

include /etc/nginx/sites-enabled/*;

复制项目配置文件

sudo cp /etc/nginx/sites-enabled/default /etc/nginx/conf.d/laravel.conf
sudo vim /etc/nginx/conf.d/laravel.conf

粘贴这一段代码

server {
    listen 80;
    server_name _;
    root /opt/www/;
    index index.html index.htm index.php;

    location / {
    index  index.php index.htm index.html;
	try_files $uri $uri/ /index.php?$query_string;
	client_max_body_size 20M;
        if (!-e $request_filename){
	    rewrite  ^(.*)$  /index.php?s=/$1  last;
            break;
        }
    }
	error_page 500 502 503 504 /50x.html;
	location = /50x.html {
		root /usr/share/nginx/html;
	}
    location ~ \.php($|/) {
    	fastcgi_pass   unix:/run/php/php7.2-fpm.sock;
		fastcgi_index  index.php;
		fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
		fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
		fastcgi_param  PATH_INFO  $fastcgi_path_info;
		fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
		include        fastcgi_params;
    }
}


server {
	listen 80;
	listen [::]:80;

	server_name laravel.com;

	root /mnt/e/php/laravel/public/;
	index index.html index.php;

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

安装mysql

卸载mysql:

sudo apt-get autoremove --purge mysql-server
sudo apt-get remove mysql-server
sudo apt-get autoremove mysql-server
sudo apt-get remove mysql-common 
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P 

可以参考官方文档:dev.mysql.com/doc/mysql-a…

或者:

从官网下载mysql-apt-config_0..***_all.deb:dev.mysql.com/downloads/f…

将下载好的文件放到 ~/

以我下载的文件为例子:

cd ~
sudo dpkg -i mysql-apt-config_0.8.10-1_all.deb

然后执行:

sudo apt-get update
sudo apt-get install mysql-server

这将安装MySQL服务器的包,以及客户端和数据库公共文件的包。 在安装过程中,系统会要求您为root用户提供MySQL安装的密码。

MySQL服务器在安装后自动启动。您可以使用以下命令检查MySQL服务器的状态:

sudo service mysql status

使用以下命令停止MySQL服务器

sudo service mysql stop

要重新启动MySQL服务器,请使用以下命令:

sudo service mysql start

php

搜索php7 源安装包:

apt-cache search php7

安装php:

sudo apt-get -y install php7.2 #-y 这里加-y就不在需要,确认可直接执行

安装常用扩展:

sudo apt-get -y install php7.2-fpm php7.2-mysql php7.2-curl php7.2-json php7.2-mbstring php7.2-xml  php7.2-intl

其他扩展按需安装

sudo apt-get install php7.2-gd
sudo apt-get install php7.2-soap
sudo apt-get install php7.2-gmp    
sudo apt-get install php7.2-odbc       
sudo apt-get install php7.2-pspell     
sudo apt-get install php7.2-bcmath   
sudo apt-get install php7.2-enchant    
sudo apt-get install php7.2-imap       
sudo apt-get install php7.2-ldap       
sudo apt-get install php7.2-opcache
sudo apt-get install php7.2-readline   
sudo apt-get install php7.2-sqlite3    
sudo apt-get install php7.2-xmlrpc
sudo apt-get install php7.2-bz2
sudo apt-get install php7.2-interbase
sudo apt-get install php7.2-pgsql      
sudo apt-get install php7.2-recode     
sudo apt-get install php7.2-sybase     
sudo apt-get install php7.2-xsl
sudo apt-get install php7.2-cgi        
sudo apt-get install php7.2-dba 
sudo apt-get install php7.2-phpdbg     
sudo apt-get install php7.2-snmp       
sudo apt-get install php7.2-tidy       
sudo apt-get install php7.2-zip

composer

安装:

# sudo apt install composer

wget https://getcomposer.org/composer.phar
chmod +x composer #添加可执行权限
mv composer /usr/local/bin #移动文件
composer

设置阿里云国内镜像:composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

设置腾讯云国内镜像:composer config -g repos.packagist composer https://mirrors.cloud.tencent.com/composer/

取消配置:composer config -g --unset repos.packagist

安装swoole

apt-get install libpcre3 libpcre3-dev
pecl install swoole
echo extension=swoole.so > /etc/php5/cli/conf.d/swoole.ini