导航:首页 > 编程语言 > linux运行php网站

linux运行php网站

发布时间:2024-11-25 23:50:05

linux下有个php网站127.0.01/index.php可以打开,想设置成只能端口打开

将站点监听的80端口改为8888端口
修改后只能通过8888端口才能访问,http默认端口是80,https默认端口是443
使用默认端口时,不需要特意输入端口号,而用非默认端口(如8888)则需要加上:8888表示端口号

② 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 提权的介绍到此就结束了.

③ 怎么在linux运行php文件

在安装完PHP和Apache2后,我们需要安装PHP命令行解释器。

# apt-get install php5-cli [Debian 及类似系统]
# yum install php-cli [CentOS 及类似系统]

接下来我们通常要做的是,在/var/www/html(这是 Apache2 在大多数发行版中的工作目录)这个位置创建一个内容为 <?php phpinfo(); ?>,名为 infophp.php 的文件来测试(PHP是否安装正确),执行以下命令即可。

# echo '<?php phpinfo(); ?>' > /var/www/html/infophp.php

然后,将浏览器访问 http://127.0.0.1/infophp.php ,这将会在网络浏览器中打开该文件。

检查所有PHP信息

这里,‘-f‘选项解析并执行命令后跟随的文件。

④ 怎么在linux服务器上配置php环境

建议多使用网络搜索,网上这样的帖子特别多。
Linux的分支比较大,不过常使用的也就Centos和Ubuntu。下面我贴出来在Centos上面搭建php环境的方法,命令有所不同,不过差异不大。

安装apache:
yum install httpd httpd-devel
启动apache:
/etc/init.d/httpd start
此时输入服务器的IP地址,应该看到apache的服务页面,端口不用输,apache默认就是使用80端口

安装mysql:
yum install mysql mysql-server
启动mysql:
/etc/init.d/mysqld start

安装php
yum install php php-devel
重启apache使php生效
/etc/init.d/httpd restart
此时可以在目录:/var/www/html/下建立一个PHP文件
代码:
<?php phpinfo(); ?>
然后访问这个文件,就能看到PHP的一些信息,php.ini配置文件的路径可以在这个页面上看到

安装php的扩展
yum install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc
安装完扩展之后需要再次重启apache
/etc/init.d/httpd restart

测试mysql是否链接成功的php代码
<?php
$con = mysql_connect("10.0.@.@@","@@","@@");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}

mysql_select_db("mydb", $con);

$result = mysql_query("SELECT * FROM sys_user");

while($row = mysql_fetch_array($result))
{
echo $row['UserName'] . " " . $row['PassWord'] . " " . $row['id'];
echo "<br />";
}

mysql_close($con);
?>
可以把上面的代码传入目录/var/www/html/
就可以看到执行情况

⑤ 在现有的linux tomcat7环境下,怎么增加支持php的网站

正常搭建lamp环境就行了啊,只是web服务器的端口不要和tomcat的一样就行了。先安装和配置好Nginx和PHP-FPM,再把80端口的Tomcat调成8080端口,Ubuntu/Debian可以这样安装Nginx和PHP-FPM: sudo apt-get install nginx php5-fpm php5-mysqlnd php5-gd
假设这个java站的域名是java.net.你现在想添加一个域名php.net也解析简键到你的这台服务器.这时就建议你引入一个Nginx了,配置2个server{}块,一拦氏巧个域名核神是java.net,请求proxy_pass给监听8080端口的Tomcat,一个域名设为php.net,请求fastcgi_pass给监听9000端口的PHP-FPM.

Nginx配置示例如下:
server {
listen 80;
server_name java.net;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
proxy_pass http://127.0.0.1:8080;
}
}
server {
listen 80;
server_name php.net;
location ~ \.php$ {
try_files $uri =404;
include fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}

⑥ 如何在 Linux 命令行中使用和执行 PHP 代码

PHP是一个开源服务器端脚本语言,最初这三个字母代表的是“Personal Home Page”,而现在则代表的是“PHP:Hypertext Preprocessor”,它是个递归首字母缩写。它是一个跨平台脚本语言,深受C、C++和Java的影响。

在 Linux 命令行中运行 PHP 代码

PHP的语法和C、Java以及带有一些PHP特性的Perl变成语言中的语法十分相似,它当下大约正被2.6亿个网站所使用,当前最新的稳定版本是PHP版本5.6.10。

PHP是HTML的嵌入脚本,它便于开发人员快速写出动态生成的页面。PHP主要用于服务器端(而Javascript则用于客户端)以通过HTTP生成动态网页,然而,当你知道可以在Linux终端中不需要网页浏览器来执行PHP时,你或许会大为惊讶。

本文将阐述PHP脚本语言的命令行方面。

1. 在安装完PHP和Apache2后,我们需要安装PHP命令行解释器。

# apt-get install php5-cli [Debian 及类似系统]    # yum install php-cli [CentOS 及类似系统]

接下来我们通常要做的是,在/var/www/html(这是 Apache2 在大多数发行版中的工作目录)这个位置创建一个内容为 ,名为 infophp.php 的文件来测试(PHP是否安装正确),执行以下命令即可。

# echo '' /var/www/html/infophp.php

然后,将浏览器访问 http://127.0.0.1/infophp.php ,这将会在网络浏览器中打开该文件。

检查PHP信息

不需要任何浏览器,在Linux终端中也可以获得相同的结果。在Linux命令行中执行/var/www/html/infophp.php,如:

# php -f /var/www/html/infophp.php

从命令行检查PHP信息

由于输出结果太大,我们可以通过管道将上述输出结果输送给 less 命令,这样就可以一次输出一屏了,命令如下:

# php -f /var/www/html/infophp.php | less

检查所有PHP信息

这里,‘-f‘选项解析并执行命令后跟随的文件。

2. 我们可以直接在Linux命令行使用phpinfo()这个十分有价值的调试工具而不需要从文件来调用,只需执行以下命令:

# php -r 'phpinfo();'

PHP调试工具

这里,‘-r‘ 选项会让PHP代码在Linux终端中不带和标记直接执行。

3. 以交互模式运行PHP并做一些数学运算。这里,‘-a‘ 选项用于以交互模式运行PHP。

# php -a    Interactive shell    php echo 2+3;    5    php echo 9-6;    3    php echo 5*4;    20    php echo 12/3;    4    php echo 12/5;    2.4    php echo 2+3-1;    4    php echo 2+3-1*3;    2    php exit

输入 ‘exit‘ 或者按下 ‘ctrl+c‘ 来关闭PHP交互模式。

启用PHP交互模式

4. 你可以仅仅将PHP脚本作为shell脚本来运行。首先,创建在你当前工作目录中创建一个PHP样例脚本。

# echo -e '#!/usr/bin/php' phpscript.php

注意,我们在该PHP脚本的第一行使用#!/usr/bin/php,就像在shell脚本中那样(/bin/bash)。第一行的#!/usr/bin/php告诉Linux命令行用 PHP 解释器来解析该脚本文件。

其次,让该脚本可执行:

# chmod 755 phpscript.php

接着来运行它,

# ./phpscript.php

5. 你可以完全靠自己通过交互shell来创建简单函数,这你一定会被惊到了。下面是循序渐进的指南。

开启PHP交互模式。

# php -a

创建一个函数,将它命名为 addition。同时,声明两个变量 $a 和 $b。

php function addition ($a, $b)

使用花括号来在其间为该函数定义规则。

php {

定义规则。这里,该规则讲的是添加这两个变量。

php { echo $a + $b;

所有规则定义完毕,通过闭合花括号来封装规则。

php {}

测试函数,添加数字4和3,命令如下:

php var_mp (addition(4,3));

样例输出

7NULL

你可以运行以下代码来执行该函数,你可以测试不同的值,你想来多少次都行。将里头的 a 和 b 替换成你自己的值。

php var_mp (addition(a,b));php var_mp (addition(9,3.3));

样例输出

12.3NULL

创建PHP函数

你可以一直运行该函数,直至退出交互模式(ctrl+z)。同时,你也应该注意到了,上面输出结果中返回的数据类型为 NULL。这个问题可以通过要求 php 交互 shell用 return 代��� echo 返回结果来修复。

只需要在上面的函数的中 ‘echo‘ 声明用 ‘return‘ 来替换

替换

php { echo $a + $b;

php {return $a + $b;

剩下的东西和原理仍然一样。

这里是一个样例,在该样例的输出结果中返回了正确的数据类型。

PHP函数

永远都记住,用户定义的函数不会从一个shell会话保留到下一个shell会话,因此,一旦你退出交互shell,它就会丢失了。

           

回复

   使用道具 举报

返回列表

阅读全文

与linux运行php网站相关的资料

热点内容
典欣空调压缩机 浏览:421
app如何认定权限 浏览:849
两个复数相除的角度计算法则 浏览:584
电商类app开发怎么收费 浏览:300
打造电子书反编译工具 浏览:74
压缩比115 浏览:558
pdf怎么抠图 浏览:864
霍妮pdf 浏览:808
反编译VMP 浏览:46
hello编译器 浏览:771
apk程序加密 浏览:595
如何给app重命名 浏览:603
怎么幽默调侃程序员 浏览:285
忘记密码解压视频 浏览:911
运城机场春运加密 浏览:287
安卓手机如何关闭app后台 浏览:154
安卓数字密码忘记怎么破解 浏览:252
pythonzmq模式 浏览:182
linux运行php网站 浏览:867
实验室无油压缩机 浏览:807