网站开发环境(PHP开发环境布置过程全收录)

本月接到一个新项目,PC网站、手机网站、微信公众号开发。本文详细记述了本次项目开发环境的布置过程。开发环境要求要求是非常关键的,所有工作围绕要求进行。我对开发环境的要求是:1、腾讯云的ubuntu server 18环境云服务器2、布置新的容器(Docker)作为开发环境,镜像名:project,镜像的用户名为yy、密码为password、三个端口映射:9000->80访问网站、9001->22 ssh远程、9999->9002开发。3、服务器采用jexus,因为我使用asp.net、asp.net core、php三种语言开发,jexus可以在linux下满足我的要求,而且jexus具备反向代理能力,这样我就不需要再布置nginx了,毕竟是开发环境,自己好用就行了。4、php采用7.3版本,mysql不在容器中安装,直接使用服务器上已经配置好的mysql8.0,毕竟mysql8是比较消耗服务器资源的。mysql管理软件使用mywebsql。(mywebsql是一个网页形式的mysql管理工具,非常好用,我已使用多年了。)5、开发软件:为了管理简单、通用性强,采用云编程软件code-server。优点是布置完成后只要有可以联网的浏览器就能编码。缺点是code-server实在太难下载了!安装过程第一步,在服务器上安装容器(Docker)1、更新系统sudo apt-get update2、添加使用 HTTPS 传输的软件包以及 CA 证书sudo apt-get install \apt-transport-https \ca-certificates \curl \software-properties-common3、确认所下载软件包的合法性,需要添加软件源的 GPG 密钥sudo curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -4、向 source.list 中添加 Docker 软件源sudo add-apt-repository \"deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \$(lsb_release -cs) \stable"5、更新系统sudo apt-get update6、安装DockerCEsudo apt-get install docker-ce如果提示没有安装docker.io就执行下面的命令sudo apt-get install docker.io至此,Docker安装完成了第二步,设置Docker,并在Docker中安装常用软件1、启动Dockersudo systemctl start docker由于是开发使用,不是生产环境,所以不单独设置Docker用户2、按照要求拉取并运行镜像要求为(1)ubuntu系统(2)镜像名为project(3)三个端口映射:9000->80、9001->22、9999->9002sudo docker run -p 9000:80 -p 9001:22 -p 9002:9999 -d –name=project ubuntu tail -f /dev/null(sudo docker run -p 镜像外部端口1:镜像内部端口1 -p 镜像外部端口2:镜像内部端口2 -p 镜像外部端口3:镜像内部端口3 -d –name=镜像名 ubuntu系统 tail -f /dev/null)3、进入镜像系统sudo docker exec -it project bash(sudo docker exec -it 上一步设置的镜像名 bash)4、升级系统、安装必要软件(1)更新软件源apt-get update(2)更新软件apt-get upgrade(3)安装wget,用来下载软件apt-get install wget(4)安装nano,一个文本编辑工具(根据自己的使用习惯吧,我知道更多的人喜欢vi或vim)apt-get install nano(5)安装sudo,linux系统管理指令,可以使普通用户用管理员权限执行一些命令apt-get install sudo(6)安装curl,一个命令行工具,支持多种协议,可以发出网络请求并得到和提取返回的数据apt-get install curl(7)安装screen,用于后台运行code-serverapt-get install screen(8)安装openssh服务器,一个开源的SSH服务器,用于建立安全的远程服务连接,可以远程管理服务器或或传输文件,以后单发文章详细介绍吧.apt-get install openssh-server(9)安装过程中会提示选择地区的时区选择地区,这里选择亚洲,也就是6选择时区,这里选择上海,也就是70(10)启动openssh服务器service ssh start5、安装设置jexus(1)安装jexus服务器,这个简单,使用官方的脚本就可以curl https://jexus.org/release/x64/install.sh| sh(2)进入安装目录使用脚本安装的目录是/usr/jexuscd /usr/jexus(3)启动服务器(当然现在不启动,设置完PHP再启动也行)./jws start现在可以访问下服务器,看看是否正常6、安装PHP(1)更新软件源和系统sudo apt-get update && apt-get upgrade(2)安装一些辅助软件,具体的软件功能以后发文详细说明sudo apt-get install software-properties-commonsudo add-apt-repository ppa:ondrej/php(3)安装php7.3sudo apt-get install php7.3安装完成后可用sudo php -v查看版本(4)安装php的功能模块,根据自己需要进行选择性安装sudo apt-get install php-pear php7.3-curl php7.3-dev php7.3-gd php7.3-mbstring php7.3-zip php7.3-mysql php7.3-xml安装完php后,php的配置文件php.ini在/etc/php/目录下的版本号文件夹中。比如7.3版在/etc/php/7.3/下的文件夹中,7.4版在/etc/php/7.4/下的文件夹中。具体情况根据安装的不同可能或有差异。在进行jexux的php在配置时会用到。7、安装mysql原本不想安装mysql了,但是发现不安装mysql,使用php连接数据库需要手动安装许多数据库操作模块,太麻烦,所以索性安装上mysql。安装时发现没有弹出设置密码的界面。这个问题处理起来较麻烦。但是由于我不用这个镜像中的数据库,索性就不改数据库密码了。处理方法以后单独发文吧。安装方法:sudo apt-get install mysql-server8、设置jexus服务器的php支持jexus服务器默认使用asp.net,所以需要进行php的设置。jexus使用php有3种设计方法,这里选择PHP-FCGI方式支持PHP。其它方法以后单独介绍。(1)安装PHP-FCGIsudo apt-get install php-cgi(2)修改php的配置文件php.ini,将cgi.force_redirect=1一行,把前边的"#"号去掉,把值从1改为0,保存并退出(3)修改jexus的配置文件使用安装脚本安装的jexus配置文件在/usr/jexus/siteconf目录中,默认是default文件将# fastcgi.add=php|socket:/var/run/jexus/phpsvr前面的#去掉,改为fastcgi.add=php|socket:/var/run/jexus/phpsvr第三步、安装MyWebSQLMyWebSQL是绿色版基于php的mysql管理器,简单易用。可以下载解压后上传到服务器,也可以在服务器上下载解压。(1)下载下载 (到mywebsql官网找找到下载地址)wget http://nchc.dl.sourceforge.net/project/mywebsql/stable/mywebsql-3.7.zip下载完成后在当前目录中有了mywebsql-3.7.zip这个文件刚刚下载的mywebsql-3.7.zip(2)安装解压软件unzipapt-get install unzip解压结果是在当前文件夹下多了个mywebsql文件夹解压后的mywebsql文件夹(3)将mywebsql文件夹移动到站点目录下,站点目录是/home/yy/wwwcp -R mywebsql /home/yy/www(4)设置mywebsql。因为我使用宿主机的php数据库,所以mywebsql需要做修改。首先要找到宿主的ip。容器实际上就是一个虚拟机,工作时会给镜像系统和宿主分配独立的ip地址。在容器中使用ifconfig可以查看容器ip容器的ip我的容器ip是172.17.0.2,那么宿主的IP就是172.17.0.1进入mywebsql的设置页面,在mywebsql的config目录下,servers.php文件就是mywebsql的配置文件打开后修改mysql服务器地址。系统默认为localhost系统默认为localhost把localhost改成我的mysql服务器地址,也就是172.17.0.1修改后的服务器地址保存退出。使用浏览器访问,mywebsql登陆页面输入用户名和密码即可进入mysql管理页面第四步、安装code-server安装code-server是为了开发方便。使用在线开发可以免除抱着笔记本到处跑的尴尬。1、下载。现在的vodeserver是3.4.0版,官方地址在github中。下载方法:wget https://github.com/cdr/code-server/releases/download/3.0.2/code-server-3.4.0-linux-x86_64.tar.gz不过github的下载速度实在感人,所以建议大家从我的地址下载。下载方法:wget http://www.zhsweb.com/soft/code-server-3.4.0-linux-amd64.tar.gz2、解压:tar -xvzf code-server-3.4.0-linux-amd64.tar.gz解压在code-server-3.4.0-linux-amd64目录中,不过目录名太麻烦了,所以要给目录改名。3、修改目录名为code-servermv code-server-3.4.0-linux-amd64 code-server进入code-server目录cd code-server4、为了关闭PuTTY后code-server还可以运行,所以要在screen中运行。建立一个名为vscode的screenscreen -S vscode5、运行code-server,设置登录密码为mywebide,访问端口为9999,允许任何ip访问export PASSWORD="mywebide" && ./code-server –port 9999 –host 0.0.0.06、按Ctrl+A+D键,退出screen,这时我建的vscode就在后台继续默默的工作了。至此,就可以在浏览器中使用code-server编程了。在浏览器地址栏中输入地址和端口号后就见到了下面的界面code-server登录界面输入密码后就进入了编程界面code-server的编程界面第五步、安装code-serve编程插件code-server可以使用vscode的插件。1、选择插件。我在使用vscode时常用插件有Auto Close Tag、Auto Rename Tag、Bracket Pair Colorizer、Code Runner、Document This、filesize、ftp-kr、HTML CSS Support、HTML Snippets、HTMLHint、Path Intellisense、vscode-icons、Power Mode、Php Intelephense、PHP DocBlocker、PHP Debug、NuGet Package Manager、vscode-solution-explorer等等,但是在code-server中有一些插件无法使用,特别是Power Mode无法使用,非常可惜。在code-server中安装插件不能使用插件市场,必须先下载插件的vsix文件然后在code-server中加载vsix文件。2下载插件。因为插件很多,所以只以HTML CSS Support一个插件为例。进入vscode的插件市场https://marketplace.visualstudio.com/在搜索栏中输入HTML CSS Support进行搜索在市场中搜索HTML CSS Support搜索结果为下图进入后,点击下载(Download Extension)就可下载vsix文件,这个插件的文件名是ecmel.vscode-html-css-0.2.3.vsixvsix下载位置下载下来的ecmel.vscode-html-css-0.2.3.vsix3、将ecmel.vscode-html-css-0.2.3.vsix上传到服务器上,然后在code-server中加载插件进入插件界面,点击右上角的“…”,之后点击“install from VSIX”安装插件的位置4、输入插件地址,选择插件,之后插件就加载完成了。加载插件的方法至此,整个容器搭建完毕,可以愉快的撸代码了。欢迎大家讨论、评论和转发,并祝大家撸代码愉快!o(^▽^)o


本文出自快速备案,转载时请注明出处及相应链接。

本文永久链接: https://www.xiaosb.com/beian/42526/