PHP環(huán)境與虛擬主機(jī)的建立(phpstudy wamp)
本文涉及兩款php的整合環(huán)境
- phpstudy
- wampserver
這兩款都含mysql apache php,phpstudy的功能比wamp要強(qiáng)大,而且十分簡(jiǎn)單容易上手。
phpstudy易用性是因?yàn)樗鼛臀覀兎庋b了很多繁瑣易出錯(cuò)的操作,但是如果直接使用它 我們並不了解其背後的實(shí)現(xiàn)方式,所以先學(xué)習(xí)wamp可以讓我們熟悉一下原理。
一、wamp建立網(wǎng)站
1.1 了解預(yù)設(shè)網(wǎng)站程式
#安裝完成後,托盤圖示是正常的綠色。
我的程式是安裝在了D:\wamp64
,發(fā)現(xiàn)正常後直接訪問(wèn)頁(yè)面localhost
,預(yù)設(shè)的連接埠是80,可以忽略
得到正常的回應(yīng),這個(gè)頁(yè)面是來(lái)自D:\wamp64\www\index.php
,也就是wamp安裝目錄下的www資料夾存放著預(yù)設(shè)的網(wǎng)站程式。
1.2 建立新的虛擬主機(jī)
此時(shí)我們需要先了解幾個(gè)檔案。
- hosts,檔案位置:
C:\Windows\System32\drivers\etc
作用就是將一些常用的網(wǎng)址網(wǎng)域名稱與其對(duì)應(yīng)的IP位址建立一個(gè)關(guān)聯(lián)“資料庫(kù)”,當(dāng)使用者在瀏覽器中輸入一個(gè)需要登入的網(wǎng)址時(shí),系統(tǒng)會(huì)先自動(dòng)從Hosts檔案中尋找對(duì)應(yīng)的IP位址,一旦找到,系統(tǒng)會(huì)立即開(kāi)啟對(duì)應(yīng)網(wǎng)頁(yè),如果沒(méi)有找到,則係統(tǒng)會(huì)再將網(wǎng)址提交DNS網(wǎng)域解析伺服器進(jìn)行IP位址的解析。
-
httpd.conf
,檔案位置:D:\wamp64\bin\apache\apache2.4.17\conf
#這個(gè)檔案是apache 的設(shè)定文件,一般不需要改動(dòng)的。
-
httpd-vhosts.conf
,檔案位置:D:\wamp64\bin\apache\apache2.4.17\conf\extra
這個(gè)文件是虛擬主機(jī)文件,要建立新的網(wǎng)站時(shí)都需要在該文件中配置才生效。
下面我有一個(gè)需求:
一臺(tái)電腦只跑一個(gè)程式我覺(jué)得太浪費(fèi),而且我本機(jī)的80埠被佔(zhàn)用,我想開(kāi)一個(gè)網(wǎng)站用test.com:81
來(lái)進(jìn)行訪問(wèn)
一)、按照hosts檔案的作用,當(dāng)我訪問(wèn)test.com:81的時(shí)候我需要它直接跳轉(zhuǎn)而不去進(jìn)行dns網(wǎng)域解析
所以,依照固定格式在hosts檔案中加入一行
#?當(dāng)訪問(wèn)www.test.com時(shí)?,?我們告訴電腦直接解析到本機(jī)127.0.0.1?不用去dns域名解析。#?:81屬于端口號(hào)?不需要添加到這里127.0.0.1?www.test.com
二)、上一步只告訴電腦解析到本地,但我們還沒(méi)有對(duì)應(yīng)的虛擬主機(jī)
所以需要在httpd-vhosts.conf
中設(shè)定一個(gè)新的虛擬主機(jī)。
<virtualhost> ????DocumentRoot?"網(wǎng)站程序目錄" ????ServerName?綁定的域名 ????ServerAlias?綁定的域名別名 ??<directory> ??????Options?FollowSymLinks?ExecCGI ??????AllowOverride?All ??????Order?allow,deny ??????Allow?from?all ??????Require?all?granted ??</directory> </virtualhost>
另外VirtuaHost *:連接埠號(hào)碼
這裡填寫完後並不會(huì)生效,原因是我們沒(méi)有允許apache啟用虛擬主機(jī),現(xiàn)在去啟用,在httpd.conf
檔案中
#最後設(shè)定一下,wamp的apache服務(wù)的預(yù)設(shè)連接埠:
成功獲得回應(yīng)。
二、Phpstudy創(chuàng)建網(wǎng)站
看完了wamp後真是感覺(jué)非常的繁瑣,接下來(lái)用phpstudy試試。
需求不變,還是建立一個(gè)網(wǎng)站www.test.com:81
,
1.1 效果示範(fàn)
一)、直接啟動(dòng)apache
二)、建立網(wǎng)站
##
根目錄選擇項(xiàng)目的根目錄
三)、查看效果
這就完成了…
1.2 配置文件查看
使用過(guò)wamp后我們知道,配置一個(gè)虛擬主機(jī)需要改三個(gè)文件,下面看一下phpstudy的操作。
一)、hosts
由于做wamp的時(shí)候已經(jīng)手動(dòng)添加過(guò)了,所以這個(gè)文件看不出來(lái)兩者的差異。
二)、httpd.conf和vhost.conf
在wamp中,我們將多個(gè)虛擬主機(jī)的配置項(xiàng)都放在了一個(gè)文件中。
在phpstudy里,將每個(gè)網(wǎng)站的配置項(xiàng)單獨(dú)抽離出個(gè)自己的文件并放到了一個(gè)文件夾中。
httpd-vhosts.conf詳解
首先看下面的配置:
<virtualhost> ????ServerAdmin?webmaster@dummy-host.example.com ????DocumentRoot?"D:/xampp/htdocs/wherein" ????ServerName?www.shop_dev.com ????ErrorLog?"logs/wherein.com-error.log" ????CustomLog?"logs/wherein.com-access.log"?common ????<directory> ????Options?FollowSymLinks?IncludesNOEXEC?Indexes ????DirectoryIndex?index.html?index.htm?index.php ????AllowOverride?all ????Order?Deny,Allow ????Allow?from?all ????Require?all?granted ????</directory> </virtualhost>
ServerAdmin指令:
語(yǔ)法: ServerAdmin email-address|URL
用來(lái)設(shè)置服務(wù)器返回給客戶端的錯(cuò)誤信息中包含的管理員郵件地址。便于用戶在收到錯(cuò)誤信息后能及時(shí)與管理員取得聯(lián)系。
ServerName指令:
語(yǔ)法:ServerName [scheme://] FQDN [:port]
用來(lái)設(shè)置服務(wù)器用于辨識(shí)自己的主機(jī)名和端口號(hào)。主要用于創(chuàng)建重定向URL。
DocumentRoot指令:
語(yǔ)法:DocumentRoot directory-path
用來(lái)設(shè)置httpd提供服務(wù)的目錄。即你所在項(xiàng)目入口處的文件夾。
ErrorLog指令:
語(yǔ)法: ErrorLog file-path
來(lái)設(shè)置當(dāng)服務(wù)器遇到錯(cuò)誤時(shí)記錄錯(cuò)誤日志的文件。如果file-path不是以/開(kāi)頭的絕對(duì)路徑,那么將會(huì)被認(rèn)為是一個(gè)相對(duì)于ServerRoot的相對(duì)路徑。
CustomLog指令:
語(yǔ)法: ErrorLog file-path common
設(shè)置日志文件,并指明日志文件所用的格式(通常通過(guò)格式的名字)。
為主目錄或虛擬目錄設(shè)置權(quán)限。
特性:
Options FollowSymLinks IncludesNOEXEC Indexes
命 令 | 說(shuō) 明 |
---|---|
Indexes | 允許目錄瀏覽當(dāng)客戶僅指定要訪問(wèn)的目錄,但沒(méi)有指定要訪問(wèn)目錄下的哪個(gè)文件,而且目錄下不存在默認(rèn)文檔時(shí),Apache以超文本形式返回目錄中的文件和子目錄列表(虛擬目錄不會(huì)出現(xiàn)在目錄列表中) |
MultiViews | 允許內(nèi)容協(xié)商的多重視圖MultiViews其實(shí)是Apache的一個(gè)智能特性。當(dāng)客戶訪問(wèn)目錄 中一個(gè)不存在的對(duì)象時(shí),如訪問(wèn)“http://192.168.66.6/data/a”,則Apache會(huì)查找這個(gè)目錄下所有a.*文件。由于 data目錄下存在a.gif文件,因此Apache會(huì)將a.gif文件返回給客戶,而不是返回出錯(cuò)信息 |
All | All包含了除MultiViews之外的所有特性,如果沒(méi)有Options語(yǔ)句,默認(rèn)為All |
ExecCGI | 允許在該目錄下執(zhí)行CGI腳本 |
FollowSymLinks | 可以在該目錄中使用符號(hào)連接 |
Includes | 允許服務(wù)器端包含功能 |
IncludesNoExec | 允許服務(wù)器端包含功能,但禁用執(zhí)行CGI腳本 |
一旦定義允許目錄瀏覽,就會(huì)將Web站點(diǎn)的文件夾和文件名結(jié)構(gòu)暴露給黑客。目錄瀏覽還會(huì)允許黑客瀏覽文件并掌握服務(wù)器配置信息,所以指定該權(quán)限往往帶來(lái)安全性上的隱患。除非有充足的理由要使用目錄瀏覽,否則應(yīng)該禁用它。
DirectoryIndex index.html index.htm index.php
設(shè)置訪問(wèn)目錄后進(jìn)入的默認(rèn)文件
AllowOverride all
定義位于每個(gè)目錄下.htaccess(訪問(wèn)控制)文件中的指令類型。none為禁止使用.htaccess文件
Order Deny,Allow
Allow from all
設(shè)置缺省的訪問(wèn)權(quán)限與Allow和Deny語(yǔ)句的處理順序
allow, deny:缺省禁止所有客戶機(jī)的訪問(wèn),且Allow語(yǔ)句在Deny語(yǔ)句之前被匹配。如果某條件既匹配Deny語(yǔ)句又匹配Allow語(yǔ)句,則Deny語(yǔ)句會(huì)起作用(因?yàn)镈eny語(yǔ)句覆蓋了Allow語(yǔ)句)。
deny, allow:缺省允許所有客戶機(jī)的訪問(wèn),且Deny語(yǔ)句在Allow語(yǔ)句之前被匹配。如果某條件既匹配Deny語(yǔ)句又匹配Allow語(yǔ)句,則Allow語(yǔ)句會(huì)起作用(因?yàn)锳llow語(yǔ)句覆蓋了Deny語(yǔ)句)。
eg.
Order?deny?,allow Deny?from?baidu.com Deny?from?192.168.66.6除了來(lái)自baidu.com域和ip地址為192.168.66.6的客戶機(jī)外,允許所有客戶機(jī)訪問(wèn) Order?deny?,allow Allow?from?192.168.66.6 Deny?from?192.168.66.1既匹配Deny語(yǔ)句又匹配Allow語(yǔ)句,由于allow語(yǔ)句覆蓋了deny語(yǔ)句,所以是允許所有客戶機(jī)訪問(wèn) Order?allow?,deny Allow?from?192.168.66.6 Deny?from?192.168.66.1既匹配Deny語(yǔ)句又匹配Allow語(yǔ)句,由于deny語(yǔ)句覆蓋了allow語(yǔ)句,所以是禁止所有客戶機(jī)訪問(wèn)
推薦學(xué)習(xí):《PHP視頻教程》
以上是教你建立虛擬主機(jī)並運(yùn)行php專案(phpstudy + wamp)的詳細(xì)內(nèi)容。更多資訊請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

熱AI工具

Undress AI Tool
免費(fèi)脫衣圖片

Undresser.AI Undress
人工智慧驅(qū)動(dòng)的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費(fèi)的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費(fèi)的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強(qiáng)大的PHP整合開(kāi)發(fā)環(huán)境

Dreamweaver CS6
視覺(jué)化網(wǎng)頁(yè)開(kāi)發(fā)工具

SublimeText3 Mac版
神級(jí)程式碼編輯軟體(SublimeText3)

用戶語(yǔ)音輸入通過(guò)前端JavaScript的MediaRecorderAPI捕獲並發(fā)送至PHP後端;2.PHP將音頻保存為臨時(shí)文件後調(diào)用STTAPI(如Google或百度語(yǔ)音識(shí)別)轉(zhuǎn)換為文本;3.PHP將文本發(fā)送至AI服務(wù)(如OpenAIGPT)獲取智能回復(fù);4.PHP再調(diào)用TTSAPI(如百度或Google語(yǔ)音合成)將回復(fù)轉(zhuǎn)為語(yǔ)音文件;5.PHP將語(yǔ)音文件流式返回前端播放,完成交互。整個(gè)流程由PHP主導(dǎo)數(shù)據(jù)流轉(zhuǎn)與錯(cuò)誤處理,確保各環(huán)節(jié)無(wú)縫銜接。

在PHP中搭建社交分享功能的核心方法是通過(guò)動(dòng)態(tài)生成符合各平臺(tái)要求的分享鏈接。 1.首先獲取當(dāng)前頁(yè)面或指定的URL及文章信息;2.使用urlencode對(duì)參數(shù)進(jìn)行編碼;3.根據(jù)各平臺(tái)協(xié)議拼接生成分享鏈接;4.在前端展示鏈接供用戶點(diǎn)擊分享;5.動(dòng)態(tài)生成頁(yè)面OG標(biāo)籤優(yōu)化分享內(nèi)容展示;6.務(wù)必對(duì)用戶輸入進(jìn)行轉(zhuǎn)義以防止XSS攻擊。該方法無(wú)需複雜認(rèn)證,維護(hù)成本低,適用於大多數(shù)內(nèi)容分享需求。

要實(shí)現(xiàn)PHP結(jié)合AI進(jìn)行文本糾錯(cuò)與語(yǔ)法優(yōu)化,需按以下步驟操作:1.選擇適合的AI模型或API,如百度、騰訊API或開(kāi)源NLP庫(kù);2.通過(guò)PHP的curl或Guzzle調(diào)用API並處理返回結(jié)果;3.在應(yīng)用中展示糾錯(cuò)信息並允許用戶選擇是否採(cǎi)納;4.使用php-l和PHP_CodeSniffer進(jìn)行語(yǔ)法檢測(cè)與代碼優(yōu)化;5.持續(xù)收集反饋並更新模型或規(guī)則以提升效果。選擇AIAPI時(shí)應(yīng)重點(diǎn)評(píng)估準(zhǔn)確率、響應(yīng)速度、價(jià)格及對(duì)PHP的支持。代碼優(yōu)化應(yīng)遵循PSR規(guī)範(fàn)、合理使用緩存、避免循環(huán)查詢、定期審查代碼,並藉助X

1.評(píng)論系統(tǒng)商業(yè)價(jià)值最大化需結(jié)合原生廣告精準(zhǔn)投放、用戶付費(fèi)增值服務(wù)(如上傳圖片、評(píng)論置頂)、基於評(píng)論質(zhì)量的影響力激勵(lì)機(jī)制及合規(guī)匿名數(shù)據(jù)洞察變現(xiàn);2.審核策略應(yīng)採(cǎi)用前置審核 動(dòng)態(tài)關(guān)鍵詞過(guò)濾 用戶舉報(bào)機(jī)制組合,輔以評(píng)論質(zhì)量評(píng)分實(shí)現(xiàn)內(nèi)容分級(jí)曝光;3.防刷需構(gòu)建多層防禦:reCAPTCHAv3無(wú)感驗(yàn)證、Honeypot蜜罐字段識(shí)別機(jī)器人、IP與時(shí)間戳頻率限制阻止灌水、內(nèi)容模式識(shí)別標(biāo)記可疑評(píng)論,持續(xù)迭代應(yīng)對(duì)攻擊。

PHP不直接進(jìn)行AI圖像處理,而是通過(guò)API集成,因?yàn)樗瞄L(zhǎng)Web開(kāi)發(fā)而非計(jì)算密集型任務(wù),API集成能實(shí)現(xiàn)專業(yè)分工、降低成本、提升效率;2.整合關(guān)鍵技術(shù)包括使用Guzzle或cURL發(fā)送HTTP請(qǐng)求、JSON數(shù)據(jù)編解碼、API密鑰安全認(rèn)證、異步隊(duì)列處理耗時(shí)任務(wù)、健壯錯(cuò)誤處理與重試機(jī)制、圖像存儲(chǔ)與展示;3.常見(jiàn)挑戰(zhàn)有API成本失控、生成結(jié)果不可控、用戶體驗(yàn)差、安全風(fēng)險(xiǎn)和數(shù)據(jù)管理難,應(yīng)對(duì)策略分別為設(shè)置用戶配額與緩存、提供prompt指導(dǎo)與多圖選擇、異步通知與進(jìn)度提示、密鑰環(huán)境變量存儲(chǔ)與內(nèi)容審核、雲(yún)存

PHP通過(guò)數(shù)據(jù)庫(kù)事務(wù)與FORUPDATE行鎖確保庫(kù)存扣減原子性,防止高並發(fā)超賣;2.多平臺(tái)庫(kù)存一致性需依賴中心化管理與事件驅(qū)動(dòng)同步,結(jié)合API/Webhook通知及消息隊(duì)列保障數(shù)據(jù)可靠傳遞;3.報(bào)警機(jī)制應(yīng)分場(chǎng)景設(shè)置低庫(kù)存、零/負(fù)庫(kù)存、滯銷、補(bǔ)貨週期和異常波動(dòng)策略,並按緊急程度選擇釘釘、短信或郵件通知責(zé)任人,且報(bào)警信息需完整明確,以實(shí)現(xiàn)業(yè)務(wù)適配與快速響應(yīng)。

PHPisstillrelevantinmodernenterpriseenvironments.1.ModernPHP(7.xand8.x)offersperformancegains,stricttyping,JITcompilation,andmodernsyntax,makingitsuitableforlarge-scaleapplications.2.PHPintegrateseffectivelyinhybridarchitectures,servingasanAPIgateway

選擇合適AI語(yǔ)音識(shí)別服務(wù)並集成PHPSDK;2.用PHP調(diào)用ffmpeg將錄音轉(zhuǎn)為API要求格式(如wav);3.上傳文件至雲(yún)存儲(chǔ)並調(diào)用API異步識(shí)別;4.解析JSON結(jié)果並用NLP技術(shù)整理文本;5.生成Word或Markdown文檔完成會(huì)議記錄自動(dòng)化,全過(guò)程需確保數(shù)據(jù)加密、訪問(wèn)控制與合規(guī)性以保障隱私安全。
