|
导读网页的本质就是超级文本标记语言,通过结合使用其他的Web技术(如:脚本语言、公共网关接口、组件等),可以创造出功能强大的网页。因而,超级文本标记语言是万维网(Web)编程的基础,也就是说万维网是建立... 网页的本质就是超级文本标记语言,通过结合使用其他的Web技术(如:脚本语言、公共网关接口、组件等),可以创造出功能强大的网页。因而,超级文本标记语言是万维网(Web)编程的基础,也就是说万维网是建立在超文本基础之上的。超级文本标记语言之所以称为超文本标记语言,是因为文本中包含了所谓“超级链接”点。 本篇文章给大家带来的内容是关于thinkphp5在部署服务器的过程中遇到的问题总结,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。最近部署TP5遇到了很多坑,各种环境下都会出现一些问题,下面是我记录的排坑之路 先说最简单的lnmp一键安装包,我用的是1.5稳定版 安装命令:wget http://soft.vpser.net/lnmp/lnmp1.5.tar.gz -cO lnmp1.5.tar.gz && tar zxf lnmp1.5.tar.gz && cd lnmp1.5 && ./install.sh lnmp(安装+编译一键搞定) 如需要安装LNMPA或LAMP,将./install.sh 后面的参数lnmp替换为lnmpa或lamp即可。如需更改网站和数据库目录、自定义Nginx参数、PHP参数模块、开启lua等需在运行./install.sh 命令前修改安装包目录下的 lnmp.conf 文件,详细可以查看lnmp.conf文件参数说明。 第一个提示:提供始终数据库(我用的3),直接输入数字回车即可
第二个提示:输入数据库密码
第三个提示:是否启用Innodb,直接回车或者y回车
第四个提示:选择PHP版本(默认5.6)我的是默认版本
第五个提示:我选的默认不安装(我的是默认)
第六个提示:选择apache版本(我选的默认)
第七个提示:如果显示Nginx: OK,MySQL: OK,PHP: OK
并且Nginx、MySQL、PHP都是running,80和3306端口都存在,并提示安装使用的时间及Install lnmp V1.5 completed! enjoy it.的话,说明已经安装成功。 第八个提示:安装失败
如果出现类似上图的提示,有一个或几个没安装成功表明安装失败!!需要用winscp或其他类似工具,将/root目录下面的lnmp-install.log下载下来,到LNMP支持论坛发帖注明你的系统发行版名称及版本号、32位还是64位等信息,并将lnmp-install.log压缩以附件形式上传到论坛,我们会通过日志查找错误,并给予相应的解决方法 添加虚拟主机:lnmp封装好的很方便 lnmp vhost add //添加虚拟主机
输入你的虚拟域名,我的是www.tp5api.cn
这里询问是否添加更多域名,直接再输入要绑定的域名,我直接回车跳过了
网站目录不存在的话会创建目录。也可以输入已经存在的目录或要设置的目录(注意如要输入必须是全路径即以/开头的完整路径!!!)。不输入直接回车的话,采用默认目录:/home/wwwroot/域名
开启伪静态,利于SEO优化
默认已经有了discuz、discuzx、discuzx2(Discuz X二级目录)、wordpress、wp2(WordPress二级目录)、typecho、typecho2(Typecho二级目录)、sablog、emlog、dabr、phpwind、、dedecms、drupal、ecshop、shopex等常用的Nginx伪静态配置文件,可以直接输入名称进行使用,如果是二级目录则需要对应配置文件里的二级目录的名称。
是否开启错误日志
如果启用需要再输入要设置的日志的名称,默认日志目录为:/home/wwwlogs/ 默认文件名为:域名.log 回车确认后,会询问是否添加数据库和数据库用户。
如果要添加,需要先验证MySQL的root密码(注:输入密码将不显示) 如果安装了FTP服务器会询问是否添加FTP账号
如果需要添加输入 y ,不添加输入 n 回车。
提示Enter ftp account name: 后输入要创建的FTP账号名称,回车确认。 如果需要添加输入 y ,不添加输入 n 回车。 ##伪静态管理##LNMPA或LAMP可以直接使用网站根目录下放.htaccess 来设置伪静态规则(具体规则可以去程序官网网站找google百度),但是在LNMP下,需要使用Nginx伪静态规则。 ##上传网站程序##如果已经安装FTP服务器可以直接使用ftp客户端通过你的FTP信息登录后上传网站或sftp等软件上传网站,设置好相关权限开始安装即可。 ##已存在虚拟主机添加ssl证书开启https##对于已存在的虚拟主机添加https站点,可以执行:lnmp ssl add 命令添加ssl证书,目前有两种方式一种是使用自备的ssl证书,二是采用Let'sEncrypt的免费证书。添加过程和前面的添加虚拟主机的过程是一样的,只是会多一项填写ssl证书和key的步骤或直接选择Let'sEncrypt自动生成证书。 ##列出网站(虚拟主机)##执行:lnmp vhost list ##删除网站(虚拟主机)##执行:lnmp vhost del 删除网站会先列出当前已有虚拟主机,按提示输入要删除的虚拟主机域名 回车确认。 这里只是删除虚拟主机配置文件,网站文件并不会删除需要自己删除。 LNMP 1.2下需要执行:chattr -i /网站目录/.user.ini 后才能删除网站目录。 当执行chown或chmod对网站目录属主属组或权限进行操作时可能会提示chown: changing ownership of `/home/wwwroot/default/.user.ini': Operation not permitted,不需要理会,如果有强迫症可以参考前面先进行chattr -i的操作。 ##默认网站(虚拟主机)##LNMP默认网站配置文件:/usr/local/nginx/conf/nginx.conf ##防跨目录设置##LNMP 1.1及之前的版本使用php.ini里面,open_basedir设置 LNMP 1.2及更高版本防跨目录功能使用.user.ini,该文件在网站根目录下,可以修改.user.ini 里面的open_basedir的值来设置限制访问的目录或删除来移除防跨目录的设置。 .user.ini文件无法直接修改,如要修或删除需要先执行:chattr -i /网站目录/.user.ini LNMP 1.4上如果不想用防跨目录或者修改.user.ini的防跨目录的目录还需要将 /usr/local/nginx/conf/fastcgi.conf 里面的fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/"; 在该行行前添加 # 或删除改行,需要重启nginx。 LNMP 1.4上也可以直接使用lnmp1.4/tools/ 目录下的 ./remove_open_basedir_restriction.sh 进行移除。 LNMPA或LAMP 模式1.2版本以上的防跨目录的设置使用的对应apache虚拟主机配置文件(lnmp管理工具添加的话文件是 /usr/local/apache/conf/vhost/域名.conf )里的php_admin_value open_basedir参数进行设置。如果不需要设置可以在前面加 # 进行注释,或自行修改目录的限制。 ##pathinfo设置## LNMP上各个版本pathinfo各个版本的设置基本一样: lnmp v1.1上,修改对应虚拟主机的配置文件(/usr/local/nginx/conf/vhost/域名.conf) 1.4版本多PHP版本启用pathinfo的话,进入/usr/local/nginx/conf目录,拷贝一份enable-php-pathinfo.conf 命名为 enable-php7.2-pathinfo.conf,将 enable-php7.2.conf 文件里 fastcgi_pass这一行内容完整的复制下来替换 enable-php7.2-pathinfo.conf 文件中的 fastcgi_pass这一行 ,保存,再按前面的方法修改虚拟主机 include enable-php7.2-pathinfo.conf; 就行了,其他版本以此类推。 1.5版本多PHP版本开启pathinfo的话,可以在lnmp vhost add 是选择启用pathinfo,如果存在多PHP版本就会提示你选择,也可以直接修改虚拟主机配置文件将include enable-php.conf; 替换为 include enable-php7.2-pathinfo.conf; 保存 修改pathinfo需要重启nginx生效。 ##数据库管理## 1.3以上版本,可以在添加虚拟主机时选择创建数据库,也可以单独使用 lnmp database add 按提示添加数据库,添加的用户名和数据库名是同名的。 这些资料都是在 https://lnmp.org/faq/lnmp-vhost-add-howto.html(lnmp官网查到的) 很多东西是直接复制过来的,以我的水准写的不会比官网手册好 如果有人使用宝塔tp5报错open_base_dir,网站设置里面有一个安全防护,关掉了就可以(坑我好长时间) 相关推荐: thinkphp项目部署到Linux服务器上报错“模板不存在”如何解决,thinkphplinux 以上就是thinkphp5在部署服务器的过程中遇到的问题总结的详细内容,更多请关注php中文网其它相关文章! 网站建设是一个广义的术语,涵盖了许多不同的技能和学科中所使用的生产和维护的网站。 |
温馨提示:喜欢本站的话,请收藏一下本站!