本文目錄一覽:
- 1、apache php 安裝後,Apache正常啟動,但無法解析PHP,可以解析html。網頁出現HTTP 404是怎麼回事?
- 2、linux下apache2和php亂碼問題
- 3、如何解決ubuntu的apache2無法解析PHP的問題
- 4、Apache需要將php文件交給PHP解釋器處理後再 返回給瀏覽器,那PHP如何運行的呢?
apache php 安裝後,Apache正常啟動,但無法解析PHP,可以解析html。網頁出現HTTP 404是怎麼回事?
apache php 安裝後,Apache正常啟動,但無法解析PHP,可以解析html。網頁出現HTTP 404是設置錯誤造成的,解決方法為;
1、在apache的安裝目錄下,有一個htdocs目錄,現在,我們在該目錄下,新建一個簡單的php網頁文件。
2、在瀏覽器中去「瀏覽」該php網頁文件,結果把php文件內容顯示出來了,php並沒有運行。
3、需要配置apache,以調用「php語言模塊(引擎)」去執行該php代碼。需要apache的主配置文件httpd.conf,其位置在:apache安裝目錄/conf/httpd.conf。
4、找到「裝載模塊」的位置:並在這一系列的LoadModule的最後位置,添加這樣一行:”LoadModule actions_module modules/mod_actions.so “, php5語言包中的模塊文件其中,php5語言模塊名就是一個固定的名字,為:php5_module,php5語言包。
5、在apache的配置文件最後寫上:LoadModul php5_module “H:/amp/php/php5apache2_2.dll”。
6、另起一行設置php後綴的文件,由這個php語言模塊去執行。”AddType application/x-httpd-php .php”。
linux下apache2和php亂碼問題
# # 完全原創 # #
windows上倒是遇見過很多中亂碼,但有些部分應該是差不多的。有參考其他資料,但沒有直接複製大段文字,是自己一點點總結出來的。希望能夠幫到你。影響因素較多,一一列出1. apache的httpd.conf中有默認編碼的設置 ,例如 AddDefaultCharset utf-8,這個會有一定影響
2. php的php.ini中也有默認編碼的設置,例如default_charset = “utf-8″,只能有一個默認編碼
3. 資料庫欄位使用的編碼:如果是Latin很容易亂碼的
4. php源代碼文件的編碼:源代碼在開發過程中,文本存為文件本身也是有編碼方式的。
5. php代碼中使用header控制編碼(可以省略)
?php
header(「Content-Type: text/html; charset=utf-8″);
?
6. 網頁前台的編碼
html代碼中的meta meta http-equiv=”content-type” content=”text/html;charset=utf-8″
實際應用中,改變伺服器設置不現實,尤其是租伺服器,主機提供商不會幫你改的
因此,從3456入手,而且各個部分應該一直、匹配。
也就是說,資料庫用了utf-8,那麼源碼也存成utf-8,網頁前台也content=”text/html;charset=utf-8″附加說明:
第4點:
一般IDE(例如ZendStudio)是可以指定代碼編碼的,但是有一些例外:
使用Win7的記事本修改後,存為utf-8,會加入windows特有的utf-8標記「BOM」,這是微軟為了標記編碼在文件頭加的額外信息,這樣的源代碼被執行後,BOM會發往客戶端!客戶端收到的網頁開頭是亂的,因為BOM打亂了內容編碼的解析
在Mac上使用編輯工具修改源代碼後,代碼的存儲編碼會發生較大變化,本人在於團隊合作過程中也因此出現較多問題,不推薦使用系統(win/mac)自帶的一些文本編輯工具(即使他們有代碼高亮或代碼提示)
使用成熟的IDE是很不錯的辦法第5點:
用header控制編碼要注意和其他設置頭(header)的操作的前後關係,容易導致 「無法修改已發送的頭」的錯誤
用這個其實有時候實屬無奈,但很有效第6點:
請把meta http-equiv=”content-type” content=”text/html;charset=utf-8″ 放到title/title之前!!
因為如果title包含中文,很可能悲劇。本人遇到過兩次整站直接空白無法顯示出來的問題,就是因為次序問題。
如何解決ubuntu的apache2無法解析PHP的問題
你代碼打錯了吧,第一行的?應該在之後,也就是應該這樣:
?php
phpinfo();
?
Apache需要將php文件交給PHP解釋器處理後再 返回給瀏覽器,那PHP如何運行的呢?
1.我們從未手動開啟過PHP的相關進程,它是隨著Apache的啟動而運行的;
2.PHP通過mod_php5.so模塊和Apache相連(具體說來是SAPI,即伺服器應用程序編程介面);
3.PHP總共有三個模塊:內核、Zend引擎、以及擴展層;
4.PHP內核用來處理請求、文件流、錯誤處理等相關操作;
5.Zend引擎(ZE)用以將源文件轉換成機器語言,然後在虛擬機上運行它;
6.擴展層是一組函數、類庫和流,PHP使用它們來執行一些特定的操作。比如,我們需要mysql擴展來連接MySQL資料庫;
7.當ZE執行程序時可能會需要連接若干擴展,這時ZE將控制權交給擴展,等處理完特定任務後再返還;
8.最後,ZE將程序運行結果返回給PHP內核,它再將結果傳送給SAPI層,最終輸出到瀏覽器上。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/182482.html