簡體   English   中英

PHP,Apache和MySQL

[英]Php, Apache and MySQL

我與數據庫通信的概念有沖突。

如果我有一個網站,我無法直接訪問MySQL,則需要一個Web服務器,該服務器是PHP與MySQL通信,PHP將使用HTML與該網站通信對嗎? Apache的角色如何? 如果擁有這些工具,為什么還要使用WampServer? 我們可以創建自己的服務器,然后在其上運行軟件。

我正在為我的大學做一個高級項目,但是由於對這些概念的理解不足,我不知道要使用什么工具。

PHP不是Web服務器,它只是一種在Web服務器之上運行的語言。 Apache是​​Web服務器。 PHP在Apache之上運行。 之所以選擇WampSever / XAMP / LAMP之類的工具,僅僅是為了將這些軟件捆綁在一起。 安裝PHP,Apache,MySQL等並將其配置為可協同工作可能需要一段時間。 WAMP / XAMP / LAMP使快速部署這些軟件包變得更加容易。

Apache是​​一個Web服務器,它通過HTTP協議接收請求,並以文件的內容或腳本的結果作為響應。

PHP是一種服務器端腳本語言(在這種情況下)。 當Apache收到對此類文件的請求時,它將以將其作為程序運行的輸出進行響應。

PHP可以與MySQL之類的數據庫進行交互以存儲和檢索數據。

WampServer是所有這些的預打包集合,可以幫助您快速啟動和運行開發環境。

(這是對@marwan的評論的回應,“我的項目是包含大型數據庫的android應用,因此,如果我要使用服務器,是否需要使用php?而且php僅用於網站,所以我可以用於android應用程序?”,但字符用完了)

@Marwan,您可以將您的android應用直接連接到數據庫,盡管不建議這樣做為什么不直接將android連接到數據庫? ,有很多理由不支持,安全性是主要原因。 Php用於可能會或可能不會顯示為人類可讀網頁的Web服務。 許多Web服務都用於創建輸出,以供其他程序使用。 Android應用程序將使用這些服務之一,例如RESTful api( http://www.drdobbs.com/web-development/restful-web-services-a-tutorial/240169069 )從數據庫中檢索數據或進行卸載處理從客戶端(Android應用)到服務器。

除了php和apache之外,還有更多的語言和更多的服務器可以使用,但這是一個非常常見的設置(我個人最喜歡)。

如果您想了解apache和php,建議您在WAMP服務器上設置LAMP服務器,該軟件是開源的,因此是一個很好的學習工具( https://www.atlantic.net/blog/why -startups-prefer-lamp-to-wamp / )。 如果您沒有Linux機器,則可以在VM, https //www.virtualbox.org/,https://www.vmware.com/products/player甚至可能是rasberry pi https上運行LAMP堆棧://www.element14.com/community/community/raspberry-pi/raspberrypi_projects/blog/2014/02/24/raspberry-pi-as-a-lamp-server/ 在Linux上安裝LAMP堆棧的方法有很多( https://www.digitalocean.com/community/tutorials/how-to-install-linux-apache-mysql-php-lamp-stack-on- ubuntu-14-04 ,unbuntu 14.04)。

Php的文檔非常齊全,包含大量教程以及關於SO的大量問答。 http://php.net/manual/en/index.php

http://php.net/manual/en/tutorial.php

http://www.w3schools.com/php/

https://stackoverflow.com/questions/tagged/php

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM