linuxphp安裝路徑
1 rpm包安裝的,一般在/etc/php.ini 2 源碼編譯安裝的,一般在安裝目錄的conf目錄下 3 用phpinfo()函數查看,新建一個空白的PHP文件,輸入以下內容
B. linux如何查看php環境安裝路徑
1、首先可以利用find
/
-name
php.ini
查找一下,系統是否有php的配置文件2、利用netstat
-ntpl
查看9000埠是否在運行3、如果9000埠存在,可以使用lsof
-i:9000查看文件位置4、另外,如果系統已經安裝了php,你還可以用php
-v
查看版本號,前提是設置環境變數
apache:
如果採用RPM包安裝,安裝路徑應在
/etc/httpd目錄下
apache配置文件:/etc/httpd/conf/httpd.conf
Apache模塊路徑:/usr/sbin/apachectl
web目錄:/var/www/html
如果採用源代碼安裝,一般默認安裝在/usr/local/apache2目錄下
php:
如果採用RPM包安裝,安裝路徑應在
/etc/目錄下
php的配置文件:/etc/php.ini
如果採用源代碼安裝,一般默認安裝在/usr/local/lib目錄下
php配置文件:
/usr/local/lib/php.ini
或/usr/local/php/etc/php.ini
mysql:
如果採用RPM包安裝,安裝路徑應在/usr/share/mysql目錄下
mysqlmp文件位置:/usr/bin/mysqlmp
mysqli配置文件:
/etc/my.cnf或/usr/share/mysql/my.cnf
mysql數據目錄在/var/lib/mysql目錄下
如果採用源代碼安裝,一般默認安裝在/usr/local/mysql目錄下
C. 如何查看linux 下 php安裝目錄
這個要看使用的linux系統,以ubuntu為例,可以通過
dpkg -L php查看
其它的linux系統,都有類似的包管理命令,自己可以查看。
D. linux php網站怎麼安裝
一、安裝Apache2.2.22
1、到官網下載 http://httpd.apache.org/download.cgi
2、解壓
tar -zxvf httpd-2.2.22.tar.gz
3、建立目標文件夾(注意以下所有操作都時在root用戶下執行的)
mkdir /usr/local/apache2
也就是說等下安裝的apache2要安裝到這個文件夾裡面
4、配置
回到原來解壓之後產生的文件夾
./configure --prefix=/usr/local/apache2 --enable-mole=shared
要加上後面的參數,否則無法使用php,-enable-mole=shared表示Apache可以動態的載入模塊
這一步,出現了很多問題:
第一個錯誤為:
checking for APR... no
configure: error: APR not found. Please read the documentation.
解決方法:
download the latest versions of both APR and APR-Util from Apache APR, unpack them into ./srclib/apr and ./srclib/apr-util (be sure the domain names do not have version numbers; for example, the APR distribution must be under ./srclib/apr/)
then do
./configure --with-included-apr
原文章地址:http://stackoverflow.com/questions/9436860/apache-httpd-setup-and-installatio
另外一種解決方法為:
分別安裝APR和APR-util,安裝方法為:首先下載這兩個文件,然後解壓,進入解壓後目錄,然後把APR和APR-util分別安裝到/usr/local/文件夾的apr和apr-util文件夾下。APR的具體安裝方法為:
[root@localhost 52lamp]# tar -zxvf apr-1.4.2.tar.gz //unzip -o apr-1.4.2.zip
[root@localhost 52lamp]# cd apr-1.4.2
[root@localhost apr-1.4.2]# ./configure --prefix=/usr/local/apr
[root@localhost apr-1.4.2]# make
[root@localhost apr-1.4.2]# make install
安裝Apr-util 在./confiure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
其他步驟類似。
第二個錯誤為:no acceptable C compiler found in $Path
直接運行 yum install gcc,安裝Gcc即可
第三個問題為:pcre-config for libpcre not found
解決方法就是 下載prce安裝包,和APR類似,安裝到/usr/local/pcre文件夾下面即可。PS:fedora下安裝c++編譯器g++的命令為:yum install gcc-c++ 。
5、編譯
make
6、安裝
make install
7、啟動,重啟和停止 ,先切換到安裝完成後的目錄/usr/local/apache2/bin
./apachectl -k start
./apachectl -k restart
./apachectl -k stop
8、配置文件(滿足最基本的配置)
編輯 /usr/local/apache2/conf/httpd.conf 文件
找到:
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
在後面添加:
AddType application/x-httpd-php .php(使Apcche支持PHP)
AddType application/x-httpd-php-source .php5
找到:
<IfMole dir_mole>
DirectoryIndex index.html
</IfMole>
添加:
<IfMole dir_mole>
DirectoryIndex index.html index.php
</IfMole>
找到:
#ServerName www.example.com:80
修改為:
ServerName 127.0.0.1:80或者ServerName localhost:80
記得要去掉前面的「#」
9、測試
在瀏覽器里輸入http://127.0.0.1
如果出現It Works!說明成功。這是我的測試結果:O(∩_∩)O哈哈~
10、修改默認的Web站點目錄
默認的目錄為 "/usr/local/apache2/htdocs",修改apache的配置文件httpd.conf,比如在新建一個 /home/gyw/WebSite的目錄作為apache的站點目錄
找到DocumentRoot這一行修改為:DocumentRoot "/home/gyw/WebSite"
找到 <Directory> 這一行修改為:<Directory "/home/gyw/WebSite">
測試:修改到文件夾出現錯誤:
「You don't have permission to access /index.html on this server.」
解決方法:
更改文件許可權;chmod 755 index.html
打開apache配置文件httpd.conf,找到這么一段:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
deny from all
Satisfy all
</Directory>
測試結果如下:
二、安裝PHP
1、 下載
http://www.php.net/downloads.php
2、解壓
tar -zxvf php-5.3.16.tar.gz
3、建立目標文件夾
mkdir /usr/local/php
也就是說等下安裝的php要安裝到這個文件夾裡面
4、配置
回到原來解壓後的文件夾
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs
注意這里有一個-with-apxs2=/usr/local/apache/bin/apxs選項,其中apxs是在安裝Apache時產生的,apxs是一個為Apache HTTP伺服器編譯和安裝擴展模塊的工具,使之可以用由mod_so提供的LoadMole指令在運行時載入到Apache伺服器中。我的理解是通過這個工具把PHP模塊動態載入到Apache中
出現錯誤:configure: error: xml2-config not found. Please check your libxml2 installation.
運行yum install libxml2,然後再運行yum install libxml2-devel安裝完畢後,重新運行上面的./configure命令。
5、編譯
make
6、測試編譯
make test
7、安裝
make install
8、配置文件
cp /usr/local/src/php-5.3.16/php.ini-development /usr/local/php/lib/php.ini
把原來位於源代碼裡面的php.ini-development拷貝到/usr/local/php/lib/php.ini下,並且重命名為php.ini
9.重啟apache
10、測試
在apache的htdocs下建立一個php文件test.php,裡面的內容如下:
<?php
phpinfo();
?>
然後在瀏覽器里輸入http://127.0.0.1/test.php
如果出現php的相關配置,成功,如果什麼都沒有輸入,說明失敗,重新以上步驟或者查找原因
如果決定在安裝後改變配置選項,只需重復最後的三步configure, make, 以及 make install,然後需要重新啟動 Apache 使新模塊生效。Apache不需要重新編譯。
測試結果如下圖:
三、安裝MySql
1、下載
到官網下載mysql-5.1.65.tar.gz(注意是源碼包)
2、解壓
tar -zxvf mysql-5.1.65.tar.gz
3、建立目標文件夾
mkdir /usr/local/mysql
也就是說等下安裝的mysql要安裝到這個文件夾裡面
4、配置
./configure --prefix=/usr/local/mysql/
在./configure時出現錯誤:error: No curses/termcap library found
下載安裝相應軟體包
yum list|grep ncurses
yum -y install ncurses-devel
yum install ncurses-devel
5、編譯
make
6、安裝
make install
7、啟動
MySQL服務並不會自動啟動,還需要先初始化MySQL資料庫,操作如下:
cd /usr/local/mysql/bin
sudo ./mysql_install_db --user=root
注意,這里最後的root是指可以操作資料庫的用戶,可以是當前用戶,也可以新建用戶,與linux上的root用戶是兩回事,可以自己取一個名字
./mysqld_safe --user=root & 這條命令負責啟動mysql服務的守護進程,此外最後的&時必須的,因為希望守護進程在後台運行
這里的root就是剛才的那個
8、為根用戶創建密碼
./mysqladmin -u root password 『123456』
如果root已經設置過密碼,採用如下方法
./mysqladmin -u root password oldpass 『123456』
9、測試
mysql -u root -p
會提示輸入密碼,就用剛才設置的密碼
123456
如果出現mysql>,說明連接成功了,下面通過命令 創建一個資料庫、建一個表,增加一條記錄,為後面的測試准備
mysql> create database gywtest;
mysql> use gywtest;
mysql> create table student(id int(4) not null primary key auto_increment,stuname char(20));
mysql> insert into student(stuname) values('Tom');
注意每條命令後面有個分號,如果上面的都成功,後面就可以用這個測試。
四、將PHP與MySql結合起來
1、重新配置PHP,改變配置選項,只需重復PHP安裝時的最後的三步configure, make, 以及 make install,然後需要重新啟動 Apache 使新模塊生效,Apache不需要重新編譯。
2、配置
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-mysqli=/usr/local/mysql/bin/mysql_config 注意mysql_config 的路徑
3、編譯 make
4、安裝 make installe
5、測試 寫一個頁面test.php,放在apache的web目錄下,測試上面用命令創建的資料庫
<?php
$mysqli=new mysqli();
$mysqli->connect('localhost','root','123456','gywtest');
// 創建查詢
$sqlstr='select * from student';
//發送查詢給MySql
$result=$mysqli->query($sqlstr);
while($row=$result->fetch_object())
{
$name=$row->stuname;
echo $name;
}
?>
Fatal error: Class 'mysqli' not found in /home/lufangtao/Project/DB.php on line 3
解決方法:
/usr/local/php/bin/phpize 這里回車運行
出錯:
Cannot find config.m4.
Make sure that you run './phpize' in the top level source directory of the mole
解決方法:
PHP源碼包文件夾下的EXT文件夾就是放置著目前版本的可用擴展,CD進去看看都有哪些你需要的?應該看到mysqli文件夾了吧~~~
在當前目錄下執行phpize
[root@localhost mysqli]#/usr/local/php/bin/phpize
Configuring for:
PHP Api Version: 20090626
Zend Modeule Api No: 20090626
Zend Extension Api No: 220090626
Cannot find autoconf. Please check your autoconf installation and the
$PHP_AUTOCONF environment variable. Then, rerun this script.
解決方法:
yum install autoconf再次運行上面的命令即可。
[root@localhost mysqli]#./configure –prefix=/opt/mysqli –with-php-config=/opt/php/bin/php-config –with-mysqli=/opt/mysql/bin/mysql_config
[root@localhost mysqli]#make
[root@localhost mysqli]#make install
安裝完成後會有提示擴展所在目錄路徑,如:
/opt/php/lib/php/extensions/no-debug-zts-20090626php
所需的mysqli.so便會在此目錄下,接下來修改/opt/php/etc/下的php.ini文件,加入mysqli擴展,即加入如下一行:
extension=/opt/php/lib/php/extensions/no-debug-zts-20090626/mysqli.so
這里還是回出現錯誤:
參考博客http://www.cnblogs.com/wangtao_20/archive/2011/03/07/1973621.html
解決不用擴展連接MySQL的方法。
最終還是沒有解決MySQLi連接的問題,但是可以使用MySQL資料庫了,下面是測試程序
<?php
$link=mysql_connect('localhost','root','123456');
if(!$link) echo "F!";
else echo "S!";
mysql_select_db("students") or die("Could not select database");
$query="SELECT * FROM student;";
$result=mysql_query($query) or die("Query failed");
print "<table>\n";
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
print "\t<tr>\n";
foreach ($line as $col_value) {
print "\t\t<td>$col_value</td>\n";
}
print "\t</tr>\n"; }
print "</table>\n";
/* 釋放資源 */
mysql_free_result($result);
mysql_close();
?>
~
E. linux php安裝後,目錄會放在哪裡找不到php目錄下的bin目錄
確認是否安裝成功,然後可以使用whereis命令查下是否有安裝。如 whereis php,能查出來php安裝到哪裡 了。
F. PHP7安裝intl擴展和linux安裝icu
一 PHP intl 是國際化擴展,是ICU 庫的一個包裝器。所以在安裝PHP intl擴展前要先安裝ICU庫,安裝ICU庫的具體步驟::
二 安裝intl擴展
1:進入php7.2.5源碼:
2:運行:phpize ,找不到命令時,將路徑補全:/usr/local/php7/bin/phpize(是php的安裝路徑),出現如下:
Configuring for:
PHP Api Version: 20100412
Zend Mole Api No: 20100525
Zend Extension Api No: 220100525
3:運行配置
./configure --enable-intl --with-icu-dir=/usr/local/icu/ --with-php-config=/usr/local/php7/bin/php-config
注:前面路徑為icu的安裝路徑,後面路徑為php的安裝路徑。
4:編譯擴展:make
5:復制擴展到目標文件夾
cp /user/local/php/php7.2.5/ext/intl/moles/intl.so /user/local/php7/lib/php/extensions/no-debug-non-zts-20170718
注意:也可以find / -name intl.so 查找。
6:設置擴展加入配置文件中:
[intl]
extension_dir = "/usr/local/php7/lib/php/extensions/no-debug-non-zts-20170718/"
extension=intl.so
大坑:::採用phpinfo()時,無法找到配置的intl擴展,說明配置沒有生效。。。。。。
原因:在編譯php時沒有 --with-config-file-path=PATH 指定php.ini路徑,默認的路徑為/usr/local/php7/lib,只需要將php.ini放入這個默認的路徑即可。你也可以安裝配置php時加入,如下:
./configure --prefix=/usr/local/php7 --with-config-file-path=/usr/local/php7/etc --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-xmlrpc --with-xsl --with-zlib --enable-fpm --enable-bcmath -enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-zip --enable-pcntl --with-curl --with-fpm-user=nginx --enable-ftp --enable-session --enable-xml --with-apxs2=/usr/bin/apxs
訪問:index.php中phpinfo()文件。
G. tomcat下,怎麼安裝配置php (linux系統)
一、安裝和系統環境變數設置
1、我使用的PHP為php-5.4.31,不用5.5以上版本的原因是,因為他們都是使用VC11編譯的,需要一個DLL,win7及一下都不支持。下載VC9編譯的PHP 5.4(5.4.31) for X86的已編譯版本。我的安裝目錄是D:\Application\php-5.4.31,
將安裝後的路徑設置到系統環境變數path中。
2、perl直接下載安裝即可(會自動配置環境變數,不用操心)。
3、Tomcat用的是7.0.41版本。很多文檔要求將server/lib下servlets-cgi改名為servlets-cgi.jar。從6版本以後,好像就沒有server目錄,內部已經自動支持cgi,只需要進行配置即可。
Tomcat需要JDK 1.6以上,所以JDK需要先安裝好。
二、配置步驟:
1、到D:\Application\php-5.4.31目錄下
將php.ini-development復制一份同一目錄下,命名為php.ini
<1>設置extension_dir參數:
extension_dir="D:\Application\php-5.4.31\ext"
<1>設置cgi.force_redirect參數:
cgi.force_redirect = 0
2、打開Tomcat的conf下的context.xml文件
給Context增加屬性privileged="true",修改後的Context元素屬性如下所示:
<Context privileged="true">
3、打開Tomcat的conf下的web.xml文件
在servlet和servlet-mapping之間增加如下的內容:(注意,注釋不能放到配置項裡面,否則啟動報錯)
<!—Add to support PHP & Perl -->
<servlet>
<servlet-name>cgi</servlet-name>
<servlet-class>org.apache.catalina.servlets.CGIServlet</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>org.apache.catalina.servlets.CGIServlet</servlet-class>
<init-param>
<param-name>clientInputTimeout</param-name>
<param-value>200</www.gzlij.com 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-5.4.31\php-cgi.exe</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-5.4.31\php-cgi.exe</param-value>
指向CGI程序執行器,其實就一可被調用的可執行程序。(這里帶全路徑,好像不帶路徑也可以,因為path環境變數里已經配置了),記住不要用php.exe。
如果沒有配置,預設就是調用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、分別將如下的test.php和test.cgi測試程序放到webapps\ROOT\WEB-INF\php-bin和webapps\ROOT\WEB-INF\cgi-bin目錄下。
其中test.php內容如下:
<?php phpinfo();?>
Test.cgi內容如下:
# filename: test1.cgi
print "Content-type: text/html\n\n";
print "Hello, world!\n"
2、重新啟動tomcat。
瀏覽器地址欄輸入:http://127.0.0.1:8080/php-bin/test.php
如果顯示如下,則說明PHP設置正確。
<?php
echo "hello World!\n\n";
echo "hello World!\n\n";
echo "hello World!\n\n";
?>
針對上面的程序,如果配置中使用的是PHP.exe,則只能現實兩行「hello world!」, 第一行總是莫名其妙地丟失。而且對php-info()函數,第一行也會丟失。
(很多文檔中都提到這個問題,其實就是因為用錯了程序。)
瀏覽器地址欄輸入:http://127.0.0.1:8080/cgi-bin/test.cgi
如果顯示「hello world!」,則說明cgi設置正確。
H. 在虛擬linux里安裝PHP
首先在XP下下好PHP語言包,建議下載libxml2.5.10以後的版本
然後掛載U盤到LINUX下(如果不需要安裝libxml,直接進入安裝PHP5的步驟)
1.將libxml和PHP5復制到/user/local/work下,並進入該目錄下
2.分別將libxml2和PHP解壓
3.進入libxml2目錄,建立makefile,將libxml暗黑族昂到/user/local/libxml2下
4.編譯文件(makefile)
5.開始安裝(make install)
6.libxml2安裝完畢後,開始安裝PHP5,進入php-5.2.5目錄下
7.建立makefile
8.開始編譯
9.開始安裝
10.復制php.ini-dist或者php.ini-recommended到/user/local/lib目錄,並命名為php.ini
11更改httpd.conf文件相關設置,該文件位於/user/local/apache2/conf中,找到以下指令:
AddType applocation/x-gzip.gz.tgz
在該指令後加入如下指令:
AddType application/x-httpd-php.php
12.重新啟動apache,並在apache主目錄下建立文件phpinfo.php
<?php
papinfo();
>
然後在瀏覽器里深入http://localhost/phpinfo.php就會出現機器的具體配置信息
I. linux php配置文件在哪
1、找到linux php配置文件具體的的方法首先是可以打開終端輸入find命令即可顯示出php配置文件的路徑: