㈠ tp框架在linux中报这种错,百度有人说与php5.6版本冲突,切换到5.4还是不行,求解
一般出现以上问题时,是因为你在绑定模块时出错了,跟PHP版本没有太大关系,一般PHP5.3+就可以了!
㈡ 如何在linux上安装php5.6,谢谢,
不知道你问的linux,是哪个发行版本,常用的如 ubntu,centos,debian等。
我列一个centos7(服务器常用这个版本)的安装方法吧
centos7默认使用yum install 来安装程序,但默认源安装的php是5.4的,版本比较低,
要安装高版本的,要么下载源代码手动编译安装,但对不熟悉的,万一出点错误,会越搞越乱。我一般使用epel源安装php,里面各个版本都有,最新的php7.3
首先安装epel
rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm
这里面的url是目前我用的,如果提示出错,就是换url了,可以在电脑上手动打开epel源列表去检查 epel-release是哪个版本,换上对应的名字
按版本安装php
rpm-Uvhhttps://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yuminstallphp56wphp56w-mysqlphp56w-pdophp56w-gdphp56w-sslphp56w-mbstringphp56w-cliphp56w-xmlphp56w-bcmath
我这里列的是一些常用的php扩展,如果需要其它的,手动加上即可
如果需要安装php其它版本,把包名里的56改成对应版本即可 ,如
yuminstallphp71wphp71w-mysqlphp71w-pdophp71w-gdphp71w-sslphp71w-mbstringphp71w-cliphp71w-xmlphp71w-bcmath
yuminstallphp72wphp72w-mysqlphp72w-pdophp72w-gdphp72w-sslphp72w-mbstringphp72w-cliphp72w-xmlphp72w-bcmath
可对应安装php7.1和php7.2,这种安装方法,会默认配置好对应的设置,php.ini在/etc/中查找,命令行也默认启用了 (php-cli)
㈢ linux 怎么升级默认装好的php和mysql到5.0
是你的MYSQL路径设置错了....
注意大小写的区分,比如你的MYSQL安装包是大写的 。
而你的PHP 配置路径 mysql 小写 那么就会产生这样的问题.
建议你重新安装PHP 和 MYSQL
如果你要整体整合apache2 mysql5.0 php5
在编译之前还有升级一些支持库
执行命令:# yum install ntp vim-enhanced gcc gcc-c++ gcc-g77 flex bison autoconf automake bzip2-devel ncurses-devel libjpeg-devel libpng-devel libtiff-devel freetype-devel pam-devel kernel
我给写个PHP和MYSQL的编译过程.
这里要注意的是,需要先安装mysql才能装PHP
[mysql] 安装路径: /usr/local/mysql //数据库目录你可以自己设置
比如你需要安装的MYSQL为:mysql-5.0.45-linux-i686.tar.gz
将mysql-5.0.45-linux-i686.tar.gz 放到 /usr/local/src 下
#cd /usr/local/src
#tar -zvxf mysql-5.0.45-linux-i686.tar.gz
#mv mysql-5.0.45/ /usr/local/mysql //移动
#groupadd mysql //创建mysql用户组
#cd /usr/local/mysql
#useradd -g mysql mysql //创建 mysql用户
#chown -R mysql . //注意后面有个 “.”
#chgrp -R mysql .
#scripts/mysql_install_db --user=mysql //初始化数据库
#chown -R root . //给root 最高权限
#chown -R mysql data //让mysql 对data [数据库]有最高权限
#cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
// 让mysql服务随系统启动
#chown root:root /etc/rc.d/init.d/mysqld //让root有启动权限.
#chmod 755 /etc/rc.d/init.d/mysqld
#cp ./support-files/my-huge.cnf /etc/my.cnf //移动配置文件.
#mv /usr/local/mysql/data /var/lib/mysql //这一步是移动数据库。你也可以不需要执行这一步.....如果安装出错,最好不要执行这一步,因为数据库权限经常会引起mysql运行不稳定
#bin/mysqld_safe --user=mysql & //连接数据库,如果安装成功.
会有如下提示:Starting mysqld daemon with databases from /var/lib/mysql //后面那是数据库路径
[PHP] 安装路径: /usr/local/php
#cd 到安装包所在目录
# tar xjvf 你的PHP版本文件名
# cd php-X.X.X //这里就是你解压后的那个目录名
值得注意的是php的安装需要一些库.
就是:libxml gd2
# ./configure \
"--prefix=/usr/local/php" \
"--with-apxs2=/usr/local/apache2/bin/apxs" \
"--with-config-file-path=/usr/local/php/etc" \
"--with-mysql=/usr/local/mysql" \
"--with-libxml-dir=/usr/local/libxml2" \
"--with-gd=/usr/local/gd2" \
"--with-jpeg-dir" \
"--with-png-dir" \
"--with-bz2" \
"--with-freetype-dir" \
"--with-iconv-dir" \
"--with-zlib-dir " \
"--with-openssl=/usr/local/openssl" \
"--with-mcrypt=/usr/local/libmcrypt" \
"--enable-soap" \
"--enable-gd-native-ttf" \
"--enable-ftp" \
"--enable-mbstring" \
"--enable-exif" \
"--disable-ipv6" \
"--disable-cgi" \
"--disable-cli"
# make
# make install
# mkdir /usr/local/php/etc
# cp php.ini-dist /usr/local/php/etc/php.ini
㈣ linux系统查看php版本的口令是什么
linux系统查看php版本的命令是:
登录linux服务器执行以下命令:
php-v
输出:
PHP5.4.45(cli)(built:Oct11201623:35:56)
Copyright(c)1997-2014ThePHPGroup
ZendEnginev2.4.0,Copyright(c)1998-2014ZendTechnologies
withtheionCubePHPLoader(enabled)+.com(unconfigured)v6.0.6,Copyright(c)2002-2016,byionCubeLtd.
withZendGuardLoaderv3.3,Copyright(c)1998-2013,byZendTechnologies
说明:php -v会输出php的版本。
注意事项:centos下可以执行php -v命令。
㈤ 将Linux服务器上的PHP版本 从5.3.8升级到5.4.0任意版本,会对现存的PHP程序有影响吗
同一个大版本(都是php5)没事儿,直接升级问题不大。升级前习惯上备份下相关文件就好。
㈥ linux服务器,更新PHP版本,phpinfo还显示以前的版本
因为phpinfo和你运行的php -v可能不是一个东西,运行的php -v显示的哪个包,有PATH路径设置和当前路径来决定,很可能只是你当前目录里面的版本。而phpinfo()显示的版本是由apache/httpd.conf文件中决定的。
你要检查下你的php路径有没有问题
㈦ Linux下使用PHP实现提升权限技巧phplinux提权
随着互联网的发展和IT技术的日新月异,Linux系统作为一种常用的服务器操作系统,也变得越来越重要。PHP作为一种强大的脚本语言,在Linux系统下也得到了广泛的应用。在Linux系统中,管理员或开发人员需要通过提升用户权限来完成各种操作,如编辑系统文件或者执行某些需要root权限才能运行的脚本等。本文将阐述在Linux系统下使用PHP实现提升权限技巧。
一、前置知识
在讨论如何使用PHP实现提升权限之前,需要了解一些Linux系统的基本知识,如用户、用户组、文件权限等。在Linux系统中,每个文件或目录都有建立它的用户和用户组,并且每个用户都属于某一个用户组,用户和用户组都有各自的权限标记,如读、写、执行等,以及文件的属性,例如所有者、所属组等等。在使用PHP实现提升权限的过程中,我们需要了解这些基本知识,以便正确设置文件和目录的权限。
二、提升权限的方法
1.使用sudo
在Linux系统中,管理员可以使用sudo命令临时提升自己的权限,以执行需要root权限才能运行的操作。如果要在PHP中使用此方法,可以使用PHP的exec函数执行sudo命令。下面是一个使用sudo命令执行某个脚本的例子:
“`
$cmd = “sudo /usr/local/in/test.sh”;
exec($cmd, $output);
print_r($output);
?>
“`
在这个例子中,我们使用sudo命令执行了一个名为test.sh的脚本,该脚本需要root权限才能执行。执行完毕后,输出结果会被存储在$output数组中,然后使用print_r函数输出。
2.修改文件权限
在Linux系统中,管理员可以通过修改文件或目录的权限来提升用户的权限。如果要在PHP中使用此方法,可以使用PHP的chmod函数修改文件或目录的权限。下面是一个修改文件权限的例子:
“`
$file = “/var/www/html/test.php”;
chmod($file, 0755);
?>
“`
在这个例子中,我们将文件/var/www/html/test.php的权限修改为755,其中数字755表示所有者拥有读、写、执行权限,组用户和其他用户拥有读、执行权限。通过修改权限,我们可以让PHP脚本获得更高的执行权限,以便执行某些需要root权限才能运行的操作。
3.使用setuid
在Linux系统中,我们可以为某些可执行文件设置setuid标记,这样所有者拥有执行该文件的权限。如果要在PHP中使用此方法,我们可以设置PHP脚本的所有者为root,并且为PHP可执行文件设置setuid标记。下面是一个使用setuid的例子:
“`
$cmd = “/usr/local/php/php-cgi”;
posix_setuid(0);
chmod($cmd, 04750);
exec($cmd, $output);
print_r($output);
?>
“`
在这个例子中,我们使用PHP的posix_setuid函数将PHP脚本的所有者设置为root,在执行完毕后将PHP可执行文件/usr/local/php/php-cgi的权限设置为4750,其中数字4750表示将setuid标记设置为4,保留原有所有者用户组的读权限,并且为所有组用户和其他用户设置执行权限。执行完毕后,输出结果会被存储在$output数组中,然后使用print_r函数输出。
三、安全问题
在使用PHP实现提升权限的过程中,我们需要注意安全问题,以保证系统的安全性。我们需要使用sudo或setuid时,只将需要的操作对应的程序或文件提升到root权限,而不是整个程序或文件,这样可以控制提升权限的范围,从而减少滥用权限的风险。我们需要谨慎选择在PHP中执行的命令或操作,并为PHP脚本设置足够的安全保护,避免被恶意攻击所利用。我们需要定期审核提升权限的记录,并严格控制提升权限的文件和目录的权限,避免被非法访问或篡改。
在Linux系统下,使用PHP实现提升权限是一种十分实用的技巧,可以让管理员或开发人员获得更高的权限来完成各种操作。在使用此技巧时,我们需要了解Linux系统的基本知识,正确设置文件和目录的权限,并注意安全问题,以保证系统的稳定性和安全性。
相关问题拓展阅读:
linux下php文件设置成什么权限安全又不影响运行?linux下php文件设置成什么权限安全又不影响运行?
建一个用户
这个用户来茄销亏运行网站程序apache
nginx之类
你的PHP文件设颤神置成
chown
你建立的用户
然后读写权限
你看斗李着办
关于php linux 提权的介绍到此就结束了.