A. CENTOS Apache 無法解析php文件
nginx應該是先裝的,已經關聯php服務,httpd沒有關聯php,所以,就算你裝了php也沒用
B. linux nginx 無法執行php文件
為以前沒有接觸過nginx ,所以查了一天,查處原因有二:
一、網站根目錄
默認是在 /usr/local/nginx/html文件
配置在
location / {
root /home/www/wwwroot;
index index.html index.htm;
}
二、修改文件中對應的php配置部分
location ~ \.php$ {
root /home/www/wwwroot;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
特別需要注意的是:fastcgi_param這個參數默認的是$fastcgi_script_name;最好改為$document_root$fastcgi_script_name;我在實際配置中出現了php找不到需要解析文件而返回404或者500錯誤的問題。所以最好是帶上網站根目錄的路徑變數$document_root
C. linux下安裝過了php,但apache仍然不識別php文件,怎麼辦
找找Apache配置碧拿文件悔租搭
httpd.conf裡面有沒有對php的解析進行配置
類似下面這些
LoadMole
php5_mole
...
AddType
application/型凳x-httpd-php
.php
...
D. linux apache不能解析php文件,訪問後出現的是源代碼,什麼原因啊
沒有載入PHP模塊或者是MIME類型沒填對,PHP文件被當成了純文本文件提供下載而不執行裡面的代碼。Apache本身是不具備執行PHP代碼的能力的,需要把PHP當成Apache的一個模塊來載入來解析PHP文件。你看看apache的配置文件httpd.conf是否有類似的內容,C:/php-5.3.5 是我電腦上的PHP安裝目錄,你要改成自己電腦的路徑
#添加PHP模塊
LoadMole php5_mole C:/php-5.3.5/php5apache2_2.dll
#指定PHP程序的根目錄
PHPIniDir "C:/php-5.3.5"
#添加MIME映射,讓apache把PHP文件當成代碼文件來執行
AddType application/x-httpd-php .php .phtml
感覺LZ是初學者,不會配置PHP運行環境的話,建議你搜一下XAMPP,這個是Linux下的PHP傻瓜包,直接把Apache, PHP,MYSQL 等全部自動部署好了。
E. 為什麼在瀏覽器中打開php文件,變成下載了
估計是你的Apache沒有配置好。不能夠解析PHP文件
1.可能你沒LoadMoudle
2.可能你沒apachectl
graceful
估計是你的apache安裝的版本的問題吧,因為在linux下安裝和配置php伺服器時,配置的php4和php5,已經apache
1.x.xx的版本和apache
2.x.xx的配置方法是不一樣的,請檢查你的安裝和配置!
F. Linux 操作系統,安裝了PHP後apache2無法解析,老提示下載,請問什麼原因/
php配置文件中未添加對php的支持
# vi /usr/local/apache/conf/httpd.conf
php安裝完後會自動在httpd.conf加上下面一行(若無,請手動添加):
LoadMole php5_mole moles/libphp5.so
找到 AddType application/x-gzip .gz .tgz 在其下添加如下內容
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
G. linux php curl急急急
這個貌似你的web伺服器啟動的時候還無法解析網路造成的,簡單的辦法就是在確定你現在可以解析 的情況下 重啟你的 web伺服器
還有就是強制PHP直接請求對該網址進行解析不使用現有cache
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPGET, 1);
curl_setopt($ch, CURLOPT_URL, 'http://www..com );
curl_setopt($ch, CURLOPT_DNS_USE_GLOBAL_CACHE, false );
curl_setopt($ch, CURLOPT_DNS_CACHE_TIMEOUT, 2 );
curl_exec($ch);
curl_getinfo($ch);
curl_error($ch);
H. linux下php環境搭建,在linux下將apache,php,mysql,都裝了,還是不能解析php文件
Apache的配置文件你設置了解析php沒有?conf/httpd.conf文件,在最後添加:
PHPIniDir "d:/web/php"
LoadMole php5_mole "d:/web/php/php5apache2_2.dll"
AddType application/x-httpd-php .php
-----------
上面的代碼只是一個參考,你具體按照你的路徑填寫即可
I. linux執行php腳本執行沒結果
定時執行crontab使用方法詳解使用方式:crontab [ -u user ] filecrontab [ -u user ] { -l | -r | -e }說明:crontab 是用來讓使用者在固定時間或固定間隔執行程式之用,換句話說,也就是類似使用者的定時執行crontab使用方法詳解
使用方式:
crontab [ -u user ] filecrontab [ -u user ] { -l | -r | -e }
說明:
crontab 是用來讓使用者在固定時間或固定間隔執行程式之用,換句話說,也就是類似使用者的時程表。-u user 是指設定指定 user 的時程表,這個前提是你必須要有其許可權(比如說是 root)才能夠指定他人的時程表。如果不使用 -u user 的話,就是表示設定自己的時程表。
參數:
-e:執行文字編輯器來設定時程表,內定的文字編輯器是 VI,如果你想用別的文字編輯器,則請先設定 VISUAL 環境變數來指定使用那個文字編輯器(比如說 setenv VISUAL joe)
-r:刪除目前的時程表
-l:列出目前的時程表
時程表的格式如下:
f1 f2 f3 f4 f5 program
其中 f1 是表示分鍾,f2 表示小時,f3 表示一個月份中的第幾日,f4 表示月份,f5 表示一個星期中的第幾天。program 表示要執行的程式。
當 f1 為 * 時表示每分鍾都要執行 program,f2 為 * 時表示每小時都要執行程式,其餘類推
當 f1 為 a-b 時表示從第 a 分鍾到第 b 分鍾這段時間內要執行,f2 為 a-b 時表示從第 a 到第 b 小時都要執行,其餘類推
當 f1 為 */n 時表示每 n 分鍾個時間間隔執行一次,f2 為 */n 表示每 n 小時個時間間隔執行一次,其餘類推
當 f1 為 a, b, c,... 時表示第 a, b, c,... 分鍾要執行,f2 為 a, b, c,... 時表示第 a, b, c...個小時要執行,其餘類推
使用者也可以將所有的設定先存放在檔案 file 中,用 crontab file 的方式來設定時程表。
例子:
每月每天每小時的第 0 分鍾執行一次 /bin/ls:
0 7 * * * /bin/ls
在 12 月內, 每天的早上 6 點到 12 點中,每隔 20 分鍾執行一次 /usr/bin/backup:
0 6-12/3 * 12 * /usr/bin/backup
周一到周五每天下午 5:00 寄一封信給 [email protected]:
0 17 * * 1-5 mail -s \"hi\" [email protected] < /tmp/maildata
每月每天的午夜 0 點 20 分, 2 點 20 分, 4 點 20 分....執行 echo \"haha\"
20 0-23/2 * * * echo \"haha\"
注意:
當程式在你所指定的時間執行後,系統會寄一封信給你,顯示該程式執行的內容,若是你不希望收到這樣的信,請在每一行空一格之後加上 > /dev/null 2>&1 即可。
crontab 基本上有兩種建立例行性命令的方式:
一種是針對所有使用者,可以藉由 crontab -e 的指令來下達工作排程;
另一種是針對系統管理員,你可以直接修改 /etc/crontab 這個文件,來直接定時執行。
假如你需要在每天的正午 12:00 發一封信給你自己,
#crontab -e
進入 vi 的編輯畫面來編輯你的例行性命令,輸入如下語句
0 12 * * * mail [email protected] < /home/cheney/test.txt
以上有5個數字,分別代表的意思是:
分(0-59)
小時(0-23)
日期(1-31)
月份(1-12)
周(0-6)
另外,如果是[ * ]的時候,代表所有數字都適用的意思。
所以,以上的語句就是不論何月、何日、星期幾的 12 點 0 分時,執行 mail [email protected] < /home/cheney/test.txt 這個命令。
例1:
給你朋友發郵件,5月1號23:59時發送,使用:
# crontab -e 59 23 1 5 * mail [email protected] < /home/cheney/lover.txt
例2:
每隔6分鍾檢查相關文件,使用:
# crontab -e */6 * * * * /home/cheney/test.sh
刪除例行性命令:
# crontab -r 就刪除了
cron
在 Linux 中,任務可以被配置在指定的時間段、指定的日期、或系統平均載量低於指定的數量時自動運行。紅帽企業 Linux 預配置了對重要系統任務的運行,以便使系統能夠時時被更新。譬如,被 locate 命令使用的 slocate 資料庫每日都被更新。系統管理員可使用自動化的任務來執行定期備份、監控系統、運行定製腳本等等。
紅帽企業 Linux 隨帶幾個自動化任務的工具:cron、at、和 batch。
cron 是一個可以用來根據時間、日期、月份、星期的組合來調度對重復任務的執行的守護進程。
cron 假定系統持續運行。如果當某任務被調度時系統不在運行,該任務就不會被執行。
要使用 cron 服務,你必須安裝了 vixie-cron RPM 軟體包,而且必須在運行 crond 服務。要判定該軟體包是否已安裝,使用 rpm -q vixie-cron 命令。要判定該服務是否在運行,使用 /sbin/service crond status 命令。
配置 cron 任務
cron 的主配置文件是 /etc/crontab,它包括下面幾行:
SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/ # run-parts 01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily 22 4 * * 0 root run-parts /etc/cron.weekly 42 4 1 * * root run-parts /etc/cron.monthly
前四行是用來配置 cron 任務運行環境的變數。SHELL 變數的值告訴系統要使用哪個 shell 環境(在這個例子里是 bash shell);PATH 變數定義用來執行命令的路徑。cron 任務的輸出被郵寄給 MAILTO 變數定義的用戶名。如果 MAILTO 變數被定義為空白字元串(MAILTO=""),電子郵件就不會被寄出。HOME 變數可以用來設置在執行命令或腳本時使用的主目錄。
/etc/crontab 文件中的每一行都代表一項任務,它的格式是:
minute hour day month dayofweek command
minute — 分鍾,從 0 到 59 之間的任何整數
hour — 小時,從 0 到 23 之間的任何整數
day — 日期,從 1 到 31 之間的任何整數(如果指定了月份,必須是該月份的有效日期)
month — 月份,從 1 到 12 之間的任何整數(或使用月份的英文簡寫如 jan、feb 等等)
dayofweek — 星期,從 0 到 7 之間的任何整數,這里的 0 或 7 代表星期日(或使用星期的英文簡寫如 sun、mon 等等)
command — 要執行的命令(命令可以是 ls /proc >> /tmp/proc 之類的命令,也可以是執行你自行編寫的腳本的命令。)
在以上任何值中,星號(*)可以用來代表所有有效的值。譬如,月份值中的星號意味著在滿足其它制約條件後每月都執行該命令。
整數間的短線(-)指定一個整數范圍。譬如,1-4 意味著整數 1、2、3、4。
用逗號(,)隔開的一系列值指定一個列表。譬如,3, 4, 6, 8 標明這四個指定的整數。
正斜線(/)可以用來指定間隔頻率。在范圍後加上 /<integer> 意味著在范圍內可以跳過 integer。譬如,0-59/2 可以用來在分鍾欄位定義每兩分鍾。間隔頻率值還可以和星號一起使用。例如,*/3 的值可以用在月份欄位中表示每三個月運行一次任務。
開頭為井號(#)的行是注釋,不會被處理。
如你在 /etc/crontab 文件中所見,它使用 run-parts 腳本來執行/etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly 和 /etc/cron.monthly 目錄中的腳本,這些腳本被相應地每小時、每日、每周、或每月執行。這些目錄中的文件應該是 shell 腳本。
如果某 cron 任務需要根據調度來執行,而不是每小時、每日、每周、或每月地執行,它可以被添加到 /etc/cron.d 目錄中。該目錄中的所有文件使用和 /etc/crontab 中一樣的語法。
# record the memory usage of the system every monday # at 3:30AM in the file /tmp/meminfo 30 3 * * mon cat /proc/meminfo >> /tmp/meminfo # run custom script the first day of every month at 4:10AM 10 4 1 * * /root/scripts/backup.sh
例 37-1. crontab 的例子
根用戶以外的用戶可以使用 crontab 工具來配置 cron 任務。所有用戶定義的 crontab 都被保存在 /var/spool/cron 目錄中,並使用創建它們的用戶身份來執行。要以某用戶身份創建一個 crontab 項目,登錄為該用戶,然後鍵入 crontab -e命令,使用由 VISUAL 或 EDITOR 環境變數指定的編輯器來編輯該用戶的 crontab。該文件使用的格式和 /etc/crontab 相同。當對 crontab 所做的改變被保存後,該 crontab 文件就會根據該用戶名被保存,並寫入文件 /var/spool/cron/username中。
cron 守護進程每分鍾都檢查 /etc/crontab 文件、etc/cron.d/ 目錄、以及 /var/spool/cron 目錄中的改變。如果發現了改變,它們就會被載入內存。這樣,當某個 crontab 文件改變後就不必重新啟動守護進程了。
控制對 cron 的使用
/etc/cron.allow 和 /etc/cron.deny 文件被用來限制對 cron 的使用。這兩個使用控制文件的格式都是每行一個用戶。兩個文件都不允許空格。如果使用控制文件被修改了,cron 守護進程(crond)不必被重啟。使用控制文件在每次用戶添加或刪除一項 cron 任務時都會被讀取。
無論使用控制文件中的規定如何,根用戶都總是可以使用 cron。
如果 cron.allow 文件存在,只有其中列出的用戶才被允許使用 cron,並且 cron.deny 文件會被忽略。
如果 cron.allow 文件不存在,所有在 cron.deny 中列出的用戶都被禁止使用 cron。
啟動和停止服務
要啟動 cron 服務,使用 /sbin/service crond start 命令。要停止該服務,使用 /sbin/service crond stop 命令。推薦你在引導時啟動該服務。
本篇文章來源於:開發學院 http://e.codepub.com 原文鏈接: http://e.codepub.com/2010/0723/24498.php