博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PHP+MySQL代码部署在Linux(Ubuntu)上注意事项
阅读量:6459 次
发布时间:2019-06-23

本文共 1482 字,大约阅读时间需要 4 分钟。

最近帮同学做一个网站,同学买的是阿里云服务器,Linux发行版是Ubuntu12.04。我在本地把程序写好,都调试好了。然后他让我自己发布和部署。之前在大学里上操作系统课程时,也用过一段时间的Ubuntu,那个时候应该是10.04。并且是虚拟机,有界面的。现在是服务器版本,只有命令行,而且自己要使用终端模拟器链接。

所以就搜索资料,看哪些工具好用,而已方便。找了一圈,发现下面2个工具结合起来蛮好的。文件上传和权限改变工具:WinSCP,另外一个就是命令行终端模拟器:Xshell。这2个工具顺利帮我解决了这次在Linux上发布和部署PHP代码的问题。软件图标如下:

注意事项1:LAMP安装过程了,除了顺序安装Apache,MySQL和PHP。还要安装PHP对Apache对MySQL的支持。

同学告诉我,他已经安装了Apache,MySQL5.5和PHP。但是我的代码放到/var/www目录下,只要有调用MySQL的页面都运行不了,显示500服务器内部错误。这个比较纠结,然后一行一行的注释,发现下面这行代码无法执行:

$databaseConnection = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);我就问他,你确定装好了PHP,MySQL5.5。他说肯定呀!都是按照步骤安装的。开始我们都以为mysqli的扩展没有安装,就在那里改php.ini里面extension。改了,然后重启了几次Apache2和MySQL,都不起作用。后来我记得在Windows上配置时,要在PHP里面加载MySQL的dll。那在Linux系统中也需要的吧!然后就问他这个装了没有,他说应该没有。然后我们就搜索,发现确实需要装。命令是:

sudo apt-get install libapache2-mod-auth-mysqlsudo apt-get install php5-mysql#重启Apachesudo /etc/init.d/apache2 restart

  

 注意事项2:MySQL在Linux上默认对表名是大小写敏感的。 开始以为大功告成,可以洗澡睡觉了。发现点了几个页面,又有页面500错误了。怪了,这下又是什么问题。注释和运行了半天,发现有一条sql语句的程序代码,运行不了。SELECT * FROM USERS WHER id=?; 这是一条非常简单的sql语句呀!怎么跑不动呢?开始以为是bind_param(‘i’$user_id),这里绑定数据有问题。后来想到之前,公司项目中,同事从连接Oracle数据库代码搬迁到连接MySQL数据库时,出现表名大小写有问题。我突然想到是不是也有这个问题,把USERS改成users就ok了。后面查找资料得出,MySQL在Linux默认对表名是大小写敏感的。

 

总结如下:

1.Web开发工程师,不管前端,后台还是数据库,都需要了解一些Linux相关知识。因为x86 linux服务器是未来的趋势,而且公司的现有系统都慢慢的往Linux上迁移。

2.遇到问题,一方面除了在Google上搜索,有时在平时工作中积累的经验也非常的宝贵。所以平时需要把一些错误的经验,或者问题的解决办法记录下来,这样可以提升解决问题的能力。

  

参考链接:

1.WinSCP:

2.Xshell4: 官网比较难打开,我是在太平洋下载的。而已它在安装的时候,可以选择Xshell4 for home/school。这个是免费的。

3.在Centos下安装LAMP环境:

转载地址:http://qwazo.baihongyu.com/

你可能感兴趣的文章
防重复导出,点击后按钮置灰,一定时间后可再次点击
查看>>
一个误解: 单个服务器程序可承受最大连接数“理论”上是“65535”
查看>>
堆排序
查看>>
uC/OS-II
查看>>
hdu 4565 - so easy
查看>>
Day49 前端基础--jQuery
查看>>
随笔索引
查看>>
Python 基础 —— 字符串 方法
查看>>
Dubbo架构设计详解
查看>>
php笔记2012-10-28
查看>>
雷达的工作原理示意图_雷达的工作原理是什么
查看>>
growup怎么读_欧路词典|英汉-汉英词典 grow up是什么意思_grow up的中文解释和发音_grow up的翻译_grow up怎么读...
查看>>
js和ajax点赞功能代码_怎么利用ajax 和 js实现点赞功能
查看>>
android 等待圈_Android ProgressDialog 转圈圈
查看>>
join为什么每个字符都分割了 js_js中join()与 split()的对比
查看>>
antd 动态添加表单_antd中form表单添加与删除
查看>>
蓝桥杯单片机十一届省赛_卓因学员斩获第十一届“蓝桥杯”全国创意编程大赛一等奖...
查看>>
c语言倒计时不影响进程_linux学习15,执行程序就像读文章,换本书就相当于切换了进程...
查看>>
float正则表达式 带逗号_python正则表达式小试牛刀
查看>>
cf卡序列号修改工具_雄迈测试工装工具
查看>>