測試了個簡單的PHP程式返回500錯誤。

來源:互聯網
上載者:User
作業系統為UBUNTU12,APACHE2安裝無誤
PHP是APT-EGT安裝的PHP5,安裝過程我都仔細瞅了,沒提示錯誤.
弄好了之後就按照國際慣例,HELLOWORLD了一下,結果:
CHROME提示:
=================================================================
伺服器錯誤
網站在檢索 http://192.168.1.107/helloworld.php 時遇到錯誤。 該網站可能關閉進行維護或配置不正確。
=================================================
IE提示:此錯誤(HTTP 500 內部伺服器錯誤)意味著你正在訪問的網站出現了伺服器問題,此問題阻止了該網頁的顯示。
====================================

PHP代碼如下:
echo "hello world";
?>

PHP5重新安裝了也一樣,求教為什麼。。。


回複討論(解決方案)

PHP沒有解析?


不清楚。。。都是按照網上的說法安裝的,靜態網頁開啟沒有問題啊

就算解析了,也要這樣??瀏覽器啊

echo "

";  
echo "hello world";
?>


這麼多年了,LINUX為什麼不能在易用性方面做一點點改善?通過嚴苛古板的許可權管理帶來的安全能抵消效率損失嗎?不解

  
這個列印得出嗎?

另外檢查一下HTTPD LOG。

這麼多年了,LINUX為什麼不能在易用性方面做一點點改善?通過嚴苛古板的許可權管理帶來的安全能抵消效率損失嗎?不解

你重新apt-get install 一次吧 把 apache linux mysql 都給裝上,現在在ubuntu 下裝這個比在win下簡單多了。基本上正常安裝的話不會存在有什麼問題。有問題的基本上都是自己編譯的部分

你重新apt-get install 一次吧 把 apache linux mysql 都給裝上,現在在ubuntu 下裝這個比在win下簡單多了。基本上正常安裝的話不會存在有什麼問題。有問題的基本上都是自己編譯的部……

=============
重新裝了還是這樣

我找到了APACHE的錯誤記錄檔,發現了一些可能跟PHP有關的記錄,請大家幫忙診斷一下。。。
[Sun Dec 02 15:20:18 2012] [notice] caught SIGTERM, shutting down
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20100525/msql.so' - /usr/lib/php5/20100525/msql.so: cannot open shared object file: No such file or directory in Unknown on line 0

各位,我通過另一條錯誤記錄檔在網上搜尋到了一個解決辦法
日誌:permission denied in unknown on line 0

解決辦法如下
sudo chmod 777 /var/www/helloworld.php
結果就好了。。。

這是為什麼啊?難道以後每一個PHP檔案都要這麼弄?

777是錯的
問題在於你執行php的進程的許可權
請檢查你用哪個使用者執行的php
然後
chown username:username php_dir -R

建議對任意一個檔案都不要給777許可權
一般情況下給744就夠了

777是錯的
問題在於你執行php的進程的許可權
請檢查你用哪個使用者執行的php
然後
chown username:username php_dir -R

好的,我找找。多謝!受教了!

各位,我通過另一條錯誤記錄檔在網上搜尋到了一個解決辦法
日誌:permission denied in unknown on line 0

解決辦法如下
sudo chmod 777 /var/www/helloworld.php
結果就好了。。。

這是為什麼啊?難道以後每一個PHP檔案都要這麼弄?

777是最大許可權
針對不同的使用者的
rwx rwx rwx 你在linux直接看是這樣的 分別對應 所有者許可權user 使用者組許可權group 其他人許可權other
r-讀 w-寫 x-執行
rwx都有為4+2+1=7
假設r-w 即沒有寫的許可權 4+0+1=5

一般情況744
即 rwx r-- r--

將屬主指定給apache的執行使用者,
一般預設為apache就可以了。

chown apache:apache helloword.php

777是錯的
問題在於你執行php的進程的許可權
請檢查你用哪個使用者執行的php
然後
chown username:username php_dir -R

請問如何檢查是哪個使用者在執行PHP啊?

如果是載入so模式使用php,那麼
ps -ef | grep httpd | grep -v grep
然後看最左一列,就是使用者名稱

引用 11 樓 acabin 的回複:777是錯的
問題在於你執行php的進程的許可權
請檢查你用哪個使用者執行的php
然後
chown username:username php_dir -R

請問如何檢查是哪個使用者在執行PHP啊?

你不做伺服器這塊,linux 瞭解一些就好,真要做了,你會發現linux 挺有意思的, 我反而覺得windows 的產品爛,低效,折騰著麻煩。 上次就設定一個sql 的密碼,硬是折騰半天~
這麼多年了,LINUX為什麼不能在易用性方面做一點點改善?通過嚴苛古板的許可權管理帶來的安全能抵消效率損失嗎?不解

你不做伺服器這塊,linux 瞭解一些就好,真要做了,你會發現linux 挺有意思的, 我反而覺得windows 的產品爛,低效,折騰著麻煩。 上次就設定一個sql 的密碼,硬是折騰半天~
引用 4 樓 chilun 的回複:這麼多年了,LINUX為什麼不能在易用性方面做一點點改善?通過嚴苛古板的許可權管理帶來的安全能抵消效率損失嗎?不解

其他的發行版比如REDHAT之類的會不會好用一些啊……UBUNTU真的無語了

算了,我放棄了,下了個LAMP安裝包在WINDOWS下用了,UBUNTU再見。。

謝謝各位的熱心解答~結貼了


.........

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.