个人博客同步文章https://mr-houzi.com/2019/10/...一般情况下,开发者大多使用Windows系统,PHPStorm、VSCode等软件让我们离不开Windows,但是,但是大多数开发人员更喜欢在Linux上部署环境。那么这个教程就诞生了。(MacOS用户可绕过)工具PHPStormUbuntu16.04准备在Windows系统上安装PHPStorm和VM虚拟机,在虚拟机中安装Ubuntu系统。在Ubuntu上安装lnmp(Linux+Nginx+MySQL+PHP)集成环境wgethttp://soft.vpser.net/lnmp/lnmp1.6.tar.gz-cOlnmp1.6.tar.gz&&tarzxflnmp1.6.tar.gz&&cdlnmp1.6&&./install.shlnmp远程部署代码打开PHPStorm,选择CreateNewProjectfromExistingFiles选择ftpsynchronizationprojectfromremoteserver输入项目名称,选择要同步到的项目路径本地自动上传操作选项如下。当你按下Ctrl+S时,PHPStorm会帮你将当前修改的文件上传到服务器。这样会很方便。选择NewRemoteServer填写项目名称,Type选择SFTP,填写服务器IP、用户名、密码、远程项目所在路径。//查看linux下的ip命令(不是windows的ipconfig)ghost@ghost-virtual-machine:~$ifconfig直接点finish,PHPStorm会自动同步远程服务器的代码。远程调试安装xdebug扩展下载,编译xdebugwgethttp://www.xdebug.org/files/xdebug-2.2.3.tgztarxzfxdebug-2.2.3.tgzcdxdebug-2.2.3/usr/bin/phpize./configure--with-php-config=/usr/local/php/bin/php-configmakemakeinstall查看php安装路径下的lib库目录是否生成了xdebug.so文件。(我的目录:/usr/local/php/lib/php/extensions/xdebug.so)然后配置/usr/local/php/etc/php.ini文件。需要注意的是xdebug是zend的扩展,zend_extension="xdebug.so"而不是extension="xdebug.so"。[xdebug]zend_extension="xdebug.so"xdebug.profiler_enable=onxdebug.default_enable=onxdebug.trace_output_dir="/tmp/xdebug"xdebug.trace_output_name=trace.%c.%pxdebug.profiler_output_dir="/tmp/xdebug"xdebug。profiler_output_name="cachegrind.out.%s"xdebug.remote_enable=1xdebug.remote_handler="dbgp"xdebug.remote_host=10.0.100.236//本机ip不是虚拟机或远程服务器的ipxdebug.remote_mode="req"xdebug.remote_port=9001如果不知道本机ip或者本机ip是动态的,需要加上xdebug.remote_connect_back,设置为1,那么xdebug.remote_host就会失效。在PHPStorm中配置xdebug首先设置端口,要和上面xdebug.remote_port的配置保持一致。配置远程服务器,勾选使用路径映射,将本地文件映射到服务器文件。配置DBGPProxy,输入远程服务器的ip和端口,IDE键填入PHPSTORM。添加调试配置,选择新建的Server,选择调试配置,在代码中打断,点击bug开始调试。PS:如果在虚拟机中使用Linux,想在本机通过浏览器访问虚拟机中的项目,需要将Nginx中的项目ip设置为虚拟机的ip,而不是127.0.0.1。如果有多个项目怎么办?IP是一样的,不同的项目用不同的端口号来区分。
