★apache的配置文件
創(chuàng)新互聯(lián)成立于2013年,我們提供高端重慶網(wǎng)站建設(shè)公司、網(wǎng)站制作公司、成都網(wǎng)站設(shè)計、網(wǎng)站定制、網(wǎng)絡(luò)營銷推廣、小程序設(shè)計、微信公眾號開發(fā)、網(wǎng)站推廣服務(wù),提供專業(yè)營銷思路、內(nèi)容策劃、視覺設(shè)計、程序開發(fā)來完成項目落地,為會所設(shè)計企業(yè)提供源源不斷的流量和訂單咨詢。
◆/usr/local/apache2/conf/httpd.conf
◆/usr/local/apache2/bin/apachectl -l 可以列出所有的static模塊,即httpd的內(nèi)核模塊
[root@yue ~]# /usr/local/apache2/bin/apachectl -l
Compiled in modules:
core.c
mod_so.c
http_core.c
event.c 2.0和2.2默認(rèn)為prefork模式,使用子進(jìn)程(worker ;2.4默認(rèn)為event模式)
更改模式:
cd /usr/local/src/httpd-2.2.16
[root@yue httpd-2.2.16]# ./configure --help |grep mpm
--with-mpm=MPM Choose the process model for Apache to use.
MPM={beos|event|worker|prefork|mpmt_os2}
在編譯時指明模式即可
◆/usr/local/apache2/bin/apachectl -M 可以列出shared類型的模塊
◆/usr/local/apache2/bin/apachectl -t 可以查看語法有沒有錯誤
有錯改錯,沒有錯誤再重啟
◆/usr/local/apache2/bin/apachectl -graceful 可以重新加載配置文件
◆cat /usr/local/apache2/build/config.nice 可以查看編譯apache時候的選項
★結(jié)合php配置apache
vim /usr/local/apache2/conf/httpd.conf
◆找到:AddType application/x-gzip .gz .tgz
在該行下面添加:AddType application/x-httpd-php .php
◆找到:
DirectoryIndex index.html
修改為:
DirectoryIndex index.html index.htm index.php
◆找到:#ServerName www.example.com:80
修改為:ServerName localhost:80
★測試解析php
◆編寫一個php腳本,命名為1.php
[root@yue httpd-2.2.16]# vim /usr/local/apache2/htdocs/1.php
[root@yue httpd-2.2.16]# cat /usr/local/apache2/htdocs/1.php
echo baidu.com;
?>
在本地瀏覽器輸入ip地址/1.php
發(fā)現(xiàn)雖然php正常解析,但是顯示內(nèi)容為baiducom,腳本中寫的.并沒有顯示。這是因為.在php腳本中是一個連接符,如果想讓其真正顯示成.需要加上單引號(echo 'baidu.com')
◆phpinfo()可以顯示php相關(guān)的配置
我們可以看到Loaded Configuration File 顯示為(none),這是因為在/usr/local/php/etc下并沒有相關(guān)配置文件
[root@yue httpd-2.2.16]# ls /usr/local/php/etc
pear.conf
我們可以復(fù)制一個,在源碼包文件下我們可以過濾一下
[root@yue php-5.3.28]# ls |grep php.ini
php.ini-development <== 測試環(huán)境的
php.ini-production <== 生產(chǎn)環(huán)境的
[root@yue php-5.3.28]# cp php.ini-production /usr/local/php/etc/php.ini
我們需要重啟一下apache,[root@yue php-5.3.28]# /etc/init.d/apachectl restart
刷新網(wǎng)頁我們發(fā)現(xiàn)已經(jīng)改變了
◆在命令行下進(jìn)行測試
[root@yue php-5.3.28]# cd /usr/local/php <== 進(jìn)入到此目錄下
[root@yue php]# /usr/local/php/bin/php -m 可以列出所有加載的模塊,都是靜態(tài)編譯進(jìn)來的
[root@yue php]# /usr/local/php/bin/php -i 可以查看到phpinfo
要想查看配置文件,可以 /usr/local/php/bin/php -i |grep -i 'Configuration File'
[root@yue php]# /usr/local/php/bin/php -i |grep -i 'Configuration File'
Configuration File (php.ini) Path => /usr/local/php/etc
Loaded Configuration File => /usr/local/php/etc/php.ini
[root@yue php]# /usr/local/php/bin/php -v 可以查看版本
[root@yue php]# /usr/local/php/bin/php -i |head 可以查看到php的編譯選項
root@yue php]# curl -x192.168.16.100:80 yueyue.com/index.html
如果現(xiàn)實php源碼,說明php沒有正常解析,需要再去檢查配置文件
◆無法正常解析時排錯方法
/usr/local/php/bin/php -m
查看有沒有php5_module模塊,如果沒有進(jìn)行第二步
查看ls /usr/local/apache2/modules/libphp5.so 此目錄下有沒有此文件
如果有此文件但沒有第一步中的模塊,ldd /usr/local/apache2/modules/libphp5.so
查看是否有問題(是否出現(xiàn)****==> not found),此命令用來查詢依賴哪些庫文件