linux php配置文件在哪,第1张

  PHP开源脚本语言

  PHP(外文名: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,入门门槛较低,易于学习,使用广泛,主要适用于Web开发领域。PHP的文件后缀名为php。

  本文讲解了如何在linux下找出PHP配置文件phpini的路径的方法,很多linux新手都不知道php安装在哪里,需要修改phpini但是找不到在哪里,本文讲解的方法其实就是使用phpinfo()函数输出PHP信息,然后找到Configuration File (phpini) Path这节就可以了,感兴趣的同学参考下

  近来,有不博友问phpini存在哪个目录下?或者修改phpini以后为何没有生效?基于以上两个问题,我觉得有必要教一下刚接触PHP的博友们如何找到PHP调用phpini的路径目录。

  一般安装PHP环境无非有两种平台,Linux环境下与WIN平台下。而WIN平台居多,因为现在套装安装包非常方便,如appserv、wamp一件安装包等等。而Linux下也有LNMP一键安装包,非常方便。由于这些安装做了简化,所以自然的许多博友就不太清楚环境安装好了以后phpini放在哪个目录下,或者在某个目录下找到了phpini文件但不知是否是PHP程序调用的那个。

  我们可以通过phpinfo查找phpini路径

  新建一个php页面,输入:

  [code]

  

  [code]

  保存退出

  使用浏览器访问页面,会看到是一个PHP配置信息的相关页面

  找到Configuration File (phpini) Path这一行

  右边的值 /usr/local/webserver/php/etc 就是phpini文件所在目录

  最后修改以后要记得重启相关程序才能生效。

Ubuntu 下 搭建lamp

1》点击 系统 ->系统管理 ->新立得软件包管理器 点击编辑 ->使用任务分组标记软件包 点击 LAMP server

2> 安装软件 在安装过程中,有要输入mysql 用户root 的密码,输两次。需要时间 ,耐心等待。

3》 编辑php配置文件

sudo gedit /etc/php5/apache2/phpini

在 extension 下面 加上

extension=php5-mcryptso

保存,重启apache2

4> 配置apache

sudo gedit /etc/apache2/apache2conf

(注意这个命令要看具体安装路径,可以现找到apache2conf 然后点击属性查看挂在点)

在配置文件最后面加入

#添加文件类型支持

<IfModule mod_php5c>

AddType application/x-httpd-php php

DirectoryIndex indexphp

</IfModule>

#默认字符集 根据自己需要

AddDefaultCharset UTF-8

#服务器地址

ServerName 127001

#添加首页文件 三个的顺序可以换 前面的访问优先 (当然你也可以加别的 比如defaultphp)

<IfModule dir_module>

DirectoryIndex indexhtm indexhtml indexphp

</IfModule>

5》配置mysql

sudo gedit /etc/mysql/mycnf

#这里有一个地方要注意

#因为默认是只允许本地访问数据库的 如果你有需要 可以打开。

bind-address 127001

#这一句是限制只能本地访问mysql的。如果有需要其他机器访问 把这句话用#注释掉

#bind-address 127001

6》测试php

新建空文档,输入

<php

phpinfo();

>

保存为tphp (注意有时输入

<php

phpinfo();

php>

解释器不能编译。可能是版本的原因。有的书上说是这两种格式都可以,但我装的时候不可以。)

然后将刚才编写的tphp文件copy到 /var/www 下。(可以用命令 cp tphp /var/www)

在浏览器中输入http://localhost/tphp 会显示

7》测试mysql

建立空白文档,输入

<php

$link=mysql_connect('localhost','root','123456');

if(!$link) echo "失败!";

else echo "成功!";

mysql_close();

>

(注意 :上面的代码中的root 是数据库mysql 的用户名,而 123456是用户名root的对应密码。如果你在装mysql 时设置的root 密码不是123456 比如是456123,上述代码中就应该是456123总之对应就好。当初我就在这犯了错误。最后觉醒了。)

另存为 mphp 然后在浏览器中输入http://localhost/mphp 如果正常,会显示

成功!

先查看当前php版本,我的是52,已安装73版本,

1查看php各版本安装位置:find / name php

2设置软连接:

ln -s /www/server/php/73/bin/php /usr/sbin/php

有时候需要覆盖旧链接:

ln -sf /www/server/php/73/bin/php /usr/sbin/php

3定义系统变量路径为你刚刚设置的路径

export PATH="/usr/sbin:$PATH"

4查看切换成功

一、安装和系统环境变量设置

1、我使用的PHP为php-5431,不用55以上版本的原因是,因为他们都是使用VC11编译的,需要一个DLL,win7及一下都不支持。下载VC9编译的PHP 54(5431) for X86的已编译版本。我的安装目录是D:\Application\php-5431,

将安装后的路径设置到系统环境变量path中。

2、perl直接下载安装即可(会自动配置环境变量,不用操心)。

3、Tomcat用的是7041版本。很多文档要求将server/lib下servlets-cgi改名为servlets-cgijar。从6版本以后,好像就没有server目录,内部已经自动支持cgi,只需要进行配置即可。

Tomcat需要JDK 16以上,所以JDK需要先安装好。

二、配置步骤:

1、到D:\Application\php-5431目录下

将phpini-development复制一份同一目录下,命名为phpini

<1>设置extension_dir参数:

extension_dir="D:\Application\php-5431\ext"

<1>设置cgiforce_redirect参数:

cgiforce_redirect = 0

2、打开Tomcat的conf下的contextxml文件

给Context增加属性privileged="true",修改后的Context元素属性如下所示:

<Context privileged="true">

3、打开Tomcat的conf下的webxml文件

在servlet和servlet-mapping之间增加如下的内容:(注意,注释不能放到配置项里面,否则启动报错)

<!—Add to support PHP & Perl -->

<servlet>

<servlet-name>cgi</servlet-name>

<servlet-class>orgapachecatalinaservletsCGIServlet</servlet-class>

<init-param>

<param-name>debug</param-name>

<param-value>0</param-value>

</init-param>

<init-param>

<param-name>cgiPathPrefix</param-name>

<param-value>WEB-INF/cgi-bin</param-value>

</init-param>

<load-on-startup>5</load-on-startup>

</servlet>

<servlet>

<servlet-name>php</servlet-name>

<servlet-class>orgapachecatalinaservletsCGIServlet</servlet-class>

<init-param>

<param-name>clientInputTimeout</param-name>

<param-value>200</wwwgzlijcom param-value>

</init-param>

<init-param>

<param-name>debug</param-name>

<param-value>0</param-value>

</init-param>

<init-param>

<param-name>executable</param-name>

<param-value>D:\Application\php-5431\php-cgiexe</param-value>

</init-param>

<init-param>

<param-name>passShellEnvironment</param-name>

<param-value>true</param-value>

</init-param>

<init-param>

<param-name>cgiPathPrefix</param-name>

<param-value>WEB-INF/php-bin</param-value>

</init-param>

<load-on-startup>5</load-on-startup>

</servlet>

<servlet-mapping>

<servlet-name>php</servlet-name>

<url-pattern>/php-bin/</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>cgi</servlet-name>

<url-pattern>/cgi-bin/</url-pattern>

</servlet-mapping>

备注:

1、我们配制了两个servlet,分别是php、CGI

2、在servlet参数中

<param-name>executable</param-name>

<param-value>D:\Application\php-5431\php-cgiexe</param-value>

指向CGI程序执行器,其实就一可被调用的可执行程序。(这里带全路径,好像不带路径也可以,因为path环境变量里已经配置了),记住不要用phpexe。

如果没有配置,缺省就是调用perl执行程序。

3、脚本存放路径

<param-name>cgiPathPrefix</param-name>

<param-value>WEB-INF/cgi-bin</param-value>

这里将perl脚本配置的是指向webapps/web-inf/cgi-bin目录下。

<param-name>cgiPathPrefix</param-name>

<param-value>WEB-INF/php-bin</param-value>

PHP的脚本指向的是webapps/web-inf/php-bin目录下。

4、资源URL路径映射。

这里如果请求的资源是/php-bin/则,指向php服务程序,如果是/cgi-bin/则指向cgi服务程序。

<servlet-mapping>

<servlet-name>php</servlet-name>

<url-pattern>/php-bin/</url-pattern>

</servlet-mapping>

<servlet-mapping>

<servlet-name>cgi</servlet-name>

<url-pattern>/cgi-bin/</url-pattern>

</servlet-mapping>

三、测试

1、分别将如下的testphp和testcgi测试程序放到webapps\ROOT\WEB-INF\php-bin和webapps\ROOT\WEB-INF\cgi-bin目录下。

其中testphp内容如下:

<php phpinfo();>

Testcgi内容如下:

# filename: test1cgi

print "Content-type: text/html\n\n";

print "Hello, world!\n"

2、重新启动tomcat。

浏览器地址栏输入:http://127001:8080/php-bin/testphp

如果显示如下,则说明PHP设置正确。

<php

echo "hello World!\n\n";

echo "hello World!\n\n";

echo "hello World!\n\n";

>

针对上面的程序,如果配置中使用的是PHPexe,则只能现实两行“hello world!”, 第一行总是莫名其妙地丢失。而且对php-info()函数,第一行也会丢失。

(很多文档中都提到这个问题,其实就是因为用错了程序。)

浏览器地址栏输入:http://127001:8080/cgi-bin/testcgi

如果显示“hello world!”,则说明cgi设置正确。

首先应该是你把你的服务器配置好了 包括php apache mysql 的安装 等这些都安装好了。那么就是配置你的apache了。在这个过程中有什么疑问可以随时找我 QQ 530162466

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » linux php配置文件在哪

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情