


Bringen Sie Ihnen bei, einen virtuellen Host zu erstellen und PHP-Projekte auszuführen (phpstudy + wamp)
Aug 07, 2022 pm 03:17 PMPHP環(huán)境和虛擬主機(jī)的創(chuàng)建(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創(chuàng)建網(wǎng)站
1.1 了解默認(rèn)網(wǎng)站程序
安裝完成后,托盤(pán)圖標(biāo)是正常的綠色。
我的程序是安裝在了D:\wamp64
,發(fā)現(xiàn)正常后直接訪問(wèn)頁(yè)面localhost
,默認(rèn)的端口是80,可以忽略
得到正常的響應(yīng),這個(gè)頁(yè)面來(lái)源于D:\wamp64\www\index.php
,也就是wamp安裝目錄下的www文件夾存放著默認(rèn)的網(wǎng)站程序。
1.2 創(chuàng)建新的虛擬主機(jī)
此時(shí)我們需要先了解一下幾個(gè)文件。
- hosts,文件位置:
C:\Windows\System32\drivers\etc
作用就是將一些常用的網(wǎng)址域名與其對(duì)應(yīng)的IP地址建立一個(gè)關(guān)聯(lián)“數(shù)據(jù)庫(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ù)器進(jìn)行IP地址的解析。
-
httpd.conf
,文件位置:D:\wamp64\bin\apache\apache2.4.17\conf
這個(gè)文件是apache 的配置文件,一般不需要改動(dòng)的。
-
httpd-vhosts.conf
,文件位置:D:\wamp64\bin\apache\apache2.4.17\conf\extra
這個(gè)文件是虛擬主機(jī)文件,要?jiǎng)?chuàng)建新的網(wǎng)站時(shí)都需要在該文件中配置才生效。
下面我有一個(gè)需求:
一臺(tái)電腦只跑一個(gè)程序我覺(jué)得過(guò)于浪費(fèi),而且我本機(jī)的80端口被占用,我想開(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域名解析
所以 ,按照固定格式 在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
中配置一個(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)
這里填寫(xiě)完之后并不會(huì)生效,原因是我們沒(méi)有允許apache啟用虛擬主機(jī),現(xiàn)在去啟用,在 httpd.conf
文件中
最后設(shè)置一下,wamp的apache服務(wù)的默認(rèn)端口:
成功獲得響應(yīng)。
二、Phpstudy創(chuàng)建網(wǎng)站
看完了wamp后真是感覺(jué)非常的繁瑣,接下來(lái)用phpstudy試試。
需求不變,還是創(chuàng)建一個(gè)網(wǎng)站www.test.com:81
,
1.1 效果演示
一)、直接啟動(dòng)apache
二)、創(chuàng)建網(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視頻教程》
Das obige ist der detaillierte Inhalt vonBringen Sie Ihnen bei, einen virtuellen Host zu erstellen und PHP-Projekte auszuführen (phpstudy + wamp). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Benutzerspracheingabe wird erfasst und über die Mediarecorder-API des Front-End-JavaScript an das PHP-Backend gesendet. 2. PHP speichert das Audio als tempor?re Datei und ruft STTAPI (z. B. Google oder Baidu Voiceerkennung) auf, um sie in Text umzuwandeln. 3. PHP sendet den Text an einen KI -Dienst (wie OpenAigpt), um intelligente Antwort zu erhalten. 4. PHP ruft dann TTSAPI (wie Baidu oder Google Voice -Synthese) auf, um die Antwort in eine Sprachdatei umzuwandeln. 5. PHP streams die Sprachdatei zurück zum Spielen, um die Interaktion abzuschlie?en. Der gesamte Prozess wird von PHP dominiert, um eine nahtlose Verbindung zwischen allen Links zu gew?hrleisten.

Die Kernmethode zum Aufbau sozialer Freigabefunktionen in PHP besteht darin, dynamisch Freigabelinks zu generieren, die den Anforderungen jeder Plattform entsprechen. 1. Erhalten Sie zuerst die aktuelle Seite oder die angegebenen URL- und Artikelinformationen. 2. Verwenden Sie Urlencode, um die Parameter zu codieren. 3.. Splei? und generieren Teilenverbindungen gem?? den Protokollen jeder Plattform; 4. Zeigen Sie Links im vorderen Ende an, damit Benutzer klicken und freigeben k?nnen. 5. generieren Sie Dynamik OG -Tags auf der Seite, um die Anzeige der Freigabe inhaltlich zu optimieren. 6. Achten Sie darauf, dass Sie den Benutzereingaben entkommen, um XSS -Angriffe zu verhindern. Diese Methode erfordert keine komplexe Authentifizierung, weist nur geringe Wartungskosten auf und eignet sich für die meisten Anforderungen an den Inhaltsaustausch.

Um die Textfehlerkorrektur und die Syntaxoptimierung mit AI zu realisieren, müssen Sie die folgenden Schritte ausführen: 1. W?hlen Sie ein geeignetes AI -Modell oder ein geeignetes AI -Modell oder ein geeignetes AI -Modell wie Baidu, Tencent API oder Open Source NLP -Bibliothek aus; 2. Rufen Sie die API über die Curl oder das Guzzle von PHP auf und verarbeiten Sie die Rückgabeergebnisse. 3.. Informationen zur Fehlerkorrektur in der Anwendung anzeigen und erm?glichen den Benutzern, zu w?hlen, ob sie angenommen werden sollen. 4. Verwenden Sie PHP-L und PHP_CODESNIFFER für die Syntaxerkennung und -codeoptimierung. 5. sammeln Sie kontinuierlich Feedback und aktualisieren Sie das Modell oder die Regeln, um den Effekt zu verbessern. Konzentrieren Sie sich bei der Auswahl von AIAPI auf die Bewertung von Genauigkeit, Reaktionsgeschwindigkeit, Preis und Unterstützung für PHP. Die Codeoptimierung sollte den PSR -Spezifikationen folgen, Cache vernünftigerweise verwenden, zirkul?re Abfragen vermeiden, den Code regelm??ig überprüfen und x verwenden

1. Maximierung des kommerziellen Wertes des Kommentarsystems erfordert die Kombination der pr?zisen Lieferung native Werbung, benutzerbezahlte Wertsch?pfungsdienste (z. B. Bilder hochladen, Aufladungskommentare), den Incentive-Mechanismus basierend auf der Qualit?t der Kommentare und der Anonymen Daten Insight-Monetarisierung von Compliance; 2. Die Prüfungsstrategie sollte eine Kombination aus dynamischer Keyword-Filterung und Benutzerkennungsmechanismen vorab der Auditing einsetzen, die durch die Qualit?t der Kommentarqualit?t erg?nzt werden, um die hierarchische Inhaltsbelastung zu erreichen. 3. Die Anti-Pushing erfordert die Konstruktion einer mehrschichtigen Verteidigung: Recaptchav3 sensorlose überprüfung, Honeypot-Honeypot-Feldkennungroboter, IP und Zeitstempelfrequenzgrenze verhindert die Bew?sserung, und die Erkennung von Inhalten markiert verd?chtige Kommentare und st?ndig mit Angriffen.

PHP führt nicht direkt die KI-Image-Verarbeitung durch, sondern integriert sich über APIs, da es in der Webentwicklung und nicht in Bezug auf Computerintensive Aufgaben gut ist. Die API -Integration kann die professionelle Arbeitsteilung erreichen, die Kosten senken und die Effizienz verbessern. 2. Integration von Schlüsseltechnologien umfasst die Verwendung von Guzzle oder Curl zum Senden von HTTP-Anforderungen, JSON-Datencodierung und -decodierung, API-Schlüsselsicherheitsauthentifizierung, asynchroner Warteschlangenverarbeitungsaufgaben, robuster Fehlerbehebung und Wiederholungsmechanismus, Bildspeicherung und Anzeige. 3. Die gemeinsamen Herausforderungen sind API -Kosten au?er Kontrolle, unkontrollierbare Erzeugungsergebnisse, schlechte Benutzererfahrung, Sicherheitsrisiken und schwieriges Datenmanagement. In den Antwortstrategien werden Benutzerquoten und -darstellungen festgelegt, die Auswahl von ProPT-Anleitungen und mehrfizierende Auswahl, asynchrone Benachrichtigungen und Fortschrittsaufforderungen, wichtige Speicher- und Inhaltsprüfungen sowie Cloud-Speicher vorhanden.

PHP sorgt für die Inventarabzugsatomizit?t durch Datenbanktransaktionen und Forupdate -Reihenschl?sser, um eine hohe gleichzeitige überverl?ssigkeit zu verhindern. 2. Multi-Plattform-Inventarkonsistenz h?ngt von zentraler Verwaltung und ereignisgesteuerter Synchronisation ab, die API/Webhook-Benachrichtigungen und Nachrichtenwarteschlangen kombiniert, um eine zuverl?ssige Datenübertragung sicherzustellen. 3. Der Alarmmechanismus sollte in verschiedenen Szenarien niedrige Lagerbest?nde, Null/Negativ -Inventar, unerwünschte Verkaufszyklen, Nachschubzyklen und abnormale Schwankungsstrategien festlegen und die Auswahl von Dingtalk, SMS oder E -Mail -Verantwortlichen gem?? der Dringlichkeit ausw?hlen, und die Alarminformationen müssen vollst?ndig und frei sein, um die Anpassung und die Vergewaltigungsreaktion zu erreichen.

PhpisstillrelevantinMoDernEnterpriseEnvironments.1.ModerPhp (7.xand8.x) Angebote, strenge, jitkompilation und moderne Syntax, machte ma?geschneiderte Foreiglableforlarge-ScaleApplikationen

W?hlen Sie den entsprechenden AI -Spracherkennungsdienst und integrieren Sie PHPSDK. 2. Verwenden Sie PHP, um FFMPEG aufzurufen, um Aufzeichnungen in API-geforderte Formate (z. B. WAV) umzuwandeln. 3. Laden Sie Dateien in Cloud -Speicher hoch und rufen Sie API Asynchrone Recognition auf. 4. Analysieren Sie JSON -Ergebnisse und organisieren Sie Text mithilfe der NLP -Technologie. 5. Word- oder Markdown -Dokumente generieren, um die Automatisierung der Besprechungsunterlagen abzuschlie?en. Der gesamte Prozess muss sicherstellen, dass die Datenverschlüsselung, die Zugriffskontrolle und die Einhaltung der Datenschutz und Sicherheit gew?hrleistet sind.
