我無法在我的HTML頁面中使用PHP。例如,index.html
。我已經使用這兩種嘗試:如何將PHP代碼/文件添加到HTML(.html)文件?
<? contents ?>
和
<?php contents ?>
無論這些工作。我的服務器提供PHP,當我使用.php
擴展時,它可以正常工作。這是一個問題還是我必須改變php.ini
的偏好?
我無法在我的HTML頁面中使用PHP。例如,index.html
。我已經使用這兩種嘗試:如何將PHP代碼/文件添加到HTML(.html)文件?
<? contents ?>
和
<?php contents ?>
無論這些工作。我的服務器提供PHP,當我使用.php
擴展時,它可以正常工作。這是一個問題還是我必須改變php.ini
的偏好?
您不能在.html文件中運行PHP,因爲除非您告訴它,否則服務器不會將其識別爲有效的PHP擴展。要做到這一點,你需要創建你的根Web目錄.htaccess文件,這行添加到它:
AddType application/x-httpd-php .htm .html
這將告訴Apache處理與一個.htm或.html文件擴展名的PHP文件的文件。
爲了在.html文件中使用php,您必須將它們與您的HTTP服務器的配置文件中的PHP處理器相關聯。在Apache中,看起來像這樣:
AddHandler application/x-httpd-php .html
默認情況下,您不能在HTML頁面中使用PHP。
爲了做到這一點,有以下修改.htacccess文件:
AddType application/x-httpd-php .html
對於具有.html
文件解析,以及,你需要設置相應的處理程序在你的服務器配置。
對於Apache httpd的2.X這是以下行
AddHandler application/x-httpd-php .html
見PHP docu的信息,您的特定服務器的安裝。
我認爲將PHP寫入.html文件是令人困惑和反自然的。爲什麼要這麼做??
無論如何,如果你想要的是在地址欄中執行PHP文件,並顯示它們作爲html的,一個最簡單的解決辦法是使用.PHP正常,並在你的.htaccess這樣寫的規則:
RewriteRule ^([^.]+)\.html$ $1.php [L]
如果我使用PHP + HTML怎麼辦?我應該使用哪種格式?我很困惑。我的頁面基於PHP的代碼非常短,HTML中有很多代碼。所以我要做的是製作一個HTML文件。這是一個壞習慣嗎? – Hoon
格式應該是.php,因爲.html文件只包含HTML代碼。 –
您可以修改的.htaccess像其他人說,但最快的解決方法是重命名文件擴展.PHP
此行
AddHandler application/x-httpd-php .html
加入httpd.conf
文件爲您想要做什麼。 但請記住,如果你這樣做,那麼你的web服務器將會非常慢,因爲它將解析甚至靜態代碼,它們將不包含php代碼。 所以更好的方法是將文件擴展名.phtml
而不是僅僅.html
。
請記住不要用粗體寫出你的整個答案。 –
對於結合HTML和PHP,您可以使用.phtml文件。
如果你只有一個html文件的php代碼,但有多個其他文件只包含html代碼,你可以添加以下內容到你的.htaccess文件中,以便它只將這個文件作爲php。
<Files yourpage.html>
AddType application/x-httpd-php .html
//you may need to use x-httpd-php5 if you are using php 5 or higher
</Files>
這將使得PHP可執行文件僅在「yourpage.html」文件,而不是在所有的html頁面,這將防止您的整個服務器上放緩。
至於爲什麼有人可能想通過html文件服務php,我使用谷歌電子表格中的IMPORTHTML函數從外部URL中導入JSON數據,該數據必須使用php解析以清理並構建html表格。到目前爲止,我還沒有找到任何方式將.php文件導入到Google電子表格中,因此它必須保存爲.html文件才能使用。能夠通過.html文件爲php提供服務對於該特定用途是必需的。
你將不得不改變你的服務器(我假設apache)爲PHP提供html文件,但爲什麼你想擴展爲html而不是php? –
http://php.about.com/od/advancedphp/p/html_php.htm – undone
@ExplosionPills我已經使用IIS v7完成了它!這是可能的! – undone