多数的 PHP 开发者会使用 Windows 作为开发环境,但是在 Windows 上进行开发,项目大多在 Linux 系统中部署和运行,这就会带来大大小小的问题。比如 Win 中不区分大小写,可能一段相同的代码,在 Linux 中就不能正常运行。还有部分框架在 Win 和 Linux 中会有一些区别,会对开发和部署带来一些影响。所以直接使用 Linux 作为开发环境,可以减少因为环境不同而带来的问题。但是令人痛苦的是,多数的 Linux 对于用户都不够友好,缺少漂亮的操作界面以及较复杂的安装过程,让多数开发者望而却步。幸运的是,咱们国人开发了一款基于 Debian 的 Linux 系统 Deepin Linux,中文简称深度 Linux ,这款系统拥有漂亮的外观,中文语言的支持,安装简单快速,而且拥有一些常用的娱乐工具和办公工具。作为开发环境,非常合适。更多的信息,可以到其官方网站进行了解。本文主要介绍在 Deepin Linux 中搭建适合 PHP 开发者的开发环境。
-
安装 PHP7.1
$ sudo apt-get install php7.1-fpm -y
注意事项:千万不要直接执行 sudo apt-get install php7.1
,该命令会默认安装 Apache 服务器软件,如果你需要使用 Nginx ,请使用上面的命令进行安装。
-
安装 PHP7.1 相关的扩展
$ sudo apt-get install php7.1-mysql php7.1-curl php7.1-xml php7.1-mcrypt php7.1-json php7.1-gd php7.1-mbstring php7.1-zip php7.1-bcmath php7.1-redis -y
重启 Php7.1-fpm。
$ sudo service php7.1-fpm restart
-
安装 Nginx 服务器
$ sudo apt-get install nginx -y
在 /etc/nginx/sites-available
目录中新建虚拟站点配置文件,粘贴以下内容,部分内容根据自身需要进行修改:
server {
listen 80;
server_name phpinfo.test(根据自己的需要进行修改);
root "/www/phpinfo"(根据自己的需要进行修改);
index index.html index.htm index.php;
charset utf-8;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
access_log off;
error_log /var/log/nginx/phpinfo(根据自己的需要进行修改)-error.log error;
sendfile off;
client_max_body_size 100m;
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php/php7.1-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_intercept_errors off;
fastcgi_buffer_size 16k;
fastcgi_buffers 4 16k;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
}
location ~ /\.ht {
deny all;
}
}
建立软链接
$ sudo ln -s /etc/nginx/sites-available/配置文件名 /etc/nginx/sites-enabled
在根目录新建 www 目录:
$ sudo mkdir /www
在 www 目录新建 phpinfo 目录作为 phpinfo.test 的项目代码目录
$ sudo mkdir /www/phpinfo
编写一个 php 代码方便测试:
$ vim index.php
<?php
phpinfo();
?>
然后保存退出;
接下来重启 nginx
$ sudo service nginx reload
编辑 hosts 文件
$ sudo vim /etc/hosts
127.0.0.1 phpinfo.test
使用浏览器打开 phpinfo.test 域名就可以看到 phpinfo 输出的信息;
-
安装 MySQL5.7
$ sudo apt-get install mysql-server-5.7 -y
启动 Mysql
sudo service mysql start
由于 Mysql 当前版本设置密码的方式已经更改,所以我们需要先找到 Mysql 的默认的用户和密码,然后进行登录并修改密码。
首先找到 debian-sys-maint 的密码:
sudo cat /etc/mysql/debian.cnf
找到 debian-sys-maint
的密码,将其复制下来,然后用该用户和密码登录 Mysql
$ mysql -u debian-sys-maint -p 复制的密码
进入 Mysql 后执行以下命令:
mysql> use mysql;
mysql> update user set authentication_string=PASSWORD("你的密码") where User='root';
mysql> update user set plugin="mysql_native_password";
mysql> flush privileges;
mysql> quit;
使用设置的密码重新进行登录,测试是否正常;
-
安装 Git
sudo apt-get install git -y
-
安装 Composer
#下载composer可执行文件
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
#执行安装文件
php composer-setup.php
#删除安装文件
php -r "unlink('composer-setup.php');"
#该命令的作用是将该文件移动到环境变量path所在的目录,这样就可以在全局使用composer
sudo mv composer.phar /usr/local/bin/composer
配置阿里云源,加速 Composer
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
-
安装 Redis
sudo apt-get install redis-server
PHP 的运行环境已经有了,接下来咱安装开发工具即可:
- 非常好用的PHP集成开发环境 PHPStrom
- 受欢迎的代码编辑器 Sublime Text 3、Visual Studio Code、Atom
- 数据库管理软件 DEeaver
- api接口测试工具 Postman
- 提高效率的 Albert,类似于 MacOS下 的 Spotlight 和 Alfred,别忘了设置成开机启动
至此,环境已经搭建完成,快去感受 linux 的便捷吧!
文章同步发布在我的个人博客中,传送门Hesunfly Blog