Apache 安裝與配置,Apache安裝配置_PHP教程
Jul 12, 2016 am 08:55 AMApache 安裝與配置,Apache安裝配置
安裝Apache
1、下載apache軟件http://www.apache.org
2、安裝
以管理員身份進(jìn)行安裝
3、設(shè)置主機(jī)名與域名
4、選擇安裝類(lèi)型
5、自定義安裝路徑
6、開(kāi)始安裝
7、安裝結(jié)束
8、測(cè)試:
在瀏覽器的地址欄輸入localhost
Apache目錄結(jié)構(gòu):
bin目錄:
Apache的主配置文件
httpd.conf是主配置文件,位于conf目錄中
SeverRoot????????
服務(wù)器根目錄(apache的安裝目錄)
示例:
????ServerRoot "D:/wamp1027"
?
Listen 80
監(jiān)聽(tīng)端口
示例:
????Listen 80
設(shè)置多個(gè)監(jiān)聽(tīng)端口
????Listen 80
????Listen 5000
?
加載功能模塊
?
user????????用戶(hù)所屬的組名
示例:
????User daemon
?
group????????組名
示例:
????Group daemon
ServerAdmin
管理員郵箱
示例:
ServerAdmin 20151027@itcast.net
?
ServerName
????設(shè)置域名(主機(jī)名)
示例:
#ServerName localhost:80
?
DocumentRoot
????站點(diǎn)根目錄,主要用于在內(nèi)部建議域名與目錄的映射關(guān)系
示例:
DocumentRoot "D:/wamp1027/htdocs"
?
域名的作用:
1、對(duì)外提供訪(fǎng)問(wèn)(ISP 的DNS服務(wù)器完成功能)
2、對(duì)內(nèi)建立域名與目錄的映射關(guān)系(只要在配置文件中使用servername與documentroot選項(xiàng)進(jìn)行配置即可)
?
對(duì)目錄的相關(guān)設(shè)置
????#目錄相關(guān)配置
目錄相關(guān)配置:
默認(rèn)首頁(yè)
DirectoryIndex????????主要用于當(dāng)訪(fǎng)問(wèn)的請(qǐng)求僅指定了域名沒(méi)有指定具體文件時(shí),返回的首頁(yè)文件
示例:
????DirectoryIndex 首頁(yè)1 首頁(yè)2
?
是否允許列出目錄結(jié)構(gòu)
Options Indexes
作用:當(dāng)所請(qǐng)求的首頁(yè)文件不存在時(shí),是否允許列出目錄結(jié)構(gòu),非常不安全,網(wǎng)站上線(xiàn)后一定關(guān)閉(不書(shū)寫(xiě)此項(xiàng))
?
AllowOverride
主要用于設(shè)置是否開(kāi)啟外部配置文件(.htaccess)
?
對(duì)目錄權(quán)限設(shè)置
order
形式1:
????order deny,allow
作用:如果沒(méi)有明確的拒絕則全部允許
形式2:
????order allow,deny
作用:如果沒(méi)有明確的允許則全部拒絕
具休拒絕項(xiàng)與允許項(xiàng)使用deny與allow進(jìn)行配置
示例1:
????order deny,allow
????deny from 192.168.10.11
????allow from all
????除了192.168.10.11拒絕外,其余全部允許(與deny與allow具體項(xiàng)的順序無(wú)關(guān))
?
示例2:
????order allow,deny
????allow from 192.168.10.11
????deny from all
????只允許192.168.10.11訪(fǎng)問(wèn),其余全部拒絕(與deny與allow具體項(xiàng)的順序無(wú)關(guān))
?
虛擬主機(jī)的配置:
擴(kuò)展配置文件httpd-vhosts.conf,位于conf目錄下的extra目錄
NameVirtualHost????????開(kāi)啟基于域名的虛擬主機(jī)
NameVirtualHost *:80????
虛擬主機(jī)使用:
????#主機(jī)配置項(xiàng)
?
基于IP的主機(jī)
需求:
????有個(gè)公司有一臺(tái)服務(wù)器,有三個(gè)網(wǎng)卡
網(wǎng)卡1:192.168.10.11????????www.fist.com????????d:/php_folder/20151027/20151201/first
網(wǎng)卡2:192.168.10.22????????www.second.com
????d:/php_folder/20151027/20151201/second
網(wǎng)卡3:192.168.10.33????????www.third.com
????d:/php_folder/20151027/20151201/second
配置步驟:
1、使用host文件模擬DNS服務(wù)器
2、在主配置文件中開(kāi)啟對(duì)擴(kuò)展配置文件的加載
?
在擴(kuò)展 配置文件中創(chuàng)建虛擬主機(jī)
?
基于域名的配置
需求:A公司有一臺(tái)服務(wù)器,只有網(wǎng)卡接口
配置二個(gè)主機(jī)
192.168.20.11????www.one.com????????d:/php_folder/20151027/20151201/one
192.168.20.11????www.two.com????????d:/php_folder/20151027/20151201/two
示例:
?
基于端口的配置
需求:
????A公司有一個(gè)服務(wù)器
????一個(gè)固定IP:192.168.30.11
????對(duì)于所有的普通用訪(fǎng)問(wèn)時(shí)使用www.234.com域名通過(guò)80端口進(jìn)行操作
????要求所有的管理員對(duì)后臺(tái)系統(tǒng)的管理使用5000端口
示例:
監(jiān)聽(tīng)端口
host文件
虛擬主機(jī)配置
?
AllowOverride
????用于開(kāi)啟外部配置文件.htaccess
.htaccess主要作用是重定向、防盜鏈、自定義錯(cuò)誤信息提示頁(yè)面
.htaccess文件的修改不需要重新啟動(dòng)apache
.htaccess文件需要使用編輯器另存的方法創(chuàng)建
.htaccess文件只對(duì)當(dāng)前目錄生效
?
一、自定義錯(cuò)誤頁(yè)面
示例1:
第1步:開(kāi)啟外部配置文件.htaccess文件
第2步:在.htaccess文件中設(shè)置自定義錯(cuò)誤信息頁(yè)面
示例2:
第1步:
第2步:
????在根目錄下創(chuàng)建一個(gè)image資源目錄,在此目錄內(nèi)創(chuàng)建一個(gè).htaccess文件,內(nèi)容如下:
禁止訪(fǎng)問(wèn)此目錄內(nèi)所有的文件
第3步:
????
二、重定向
????當(dāng)訪(fǎng)問(wèn)站點(diǎn)根目錄內(nèi)的A目錄內(nèi)的文件時(shí),自動(dòng)轉(zhuǎn)身B目錄(或另一個(gè)主機(jī)下的目錄)
?
?
Apache的工作模式
????Apache默認(rèn)只支持HTML文件,通過(guò)模塊(插件)可以支持PHP,還可以與Tomcat連通來(lái)支持JSP。
????Apache所有的功能的擴(kuò)展都是模塊的形式實(shí)現(xiàn),模塊可以理解為插件。
圖解:
示例:
Apache實(shí)現(xiàn)用戶(hù)的認(rèn)證
第一步:開(kāi)啟以下功能模塊
第二步:
????使用htpasswd.exe文件創(chuàng)建密碼文件,運(yùn)行環(huán)境為cmd
htpasswd語(yǔ)法:
htpasswd -c 密碼文件 用戶(hù)名
????作用是用于重新創(chuàng)建密碼文件,
示例:
第三步:
????設(shè)置認(rèn)證方式
語(yǔ)法:
????AuthType Basic
第四步:
????設(shè)置realm,作用就是為認(rèn)證的文件夾起一個(gè)顯示名,當(dāng)用戶(hù)訪(fǎng)問(wèn)時(shí)顯示給用戶(hù)看。
語(yǔ)法:
????AuthName '提示信息'
示例:
第五步:
????設(shè)置認(rèn)證用戶(hù)密碼文件
語(yǔ)法:
????AuthUserFile????'密碼文件所在的目錄'
示例:
?
第六步:設(shè)置驗(yàn)證用戶(hù)名
?
對(duì)多個(gè)用戶(hù)進(jìn)行認(rèn)證
require user 用戶(hù)1 用戶(hù)2 用戶(hù)3
對(duì)所有的用戶(hù)進(jìn)行認(rèn)證
require valid-user
添加認(rèn)證用戶(hù)
語(yǔ)法:
????htpasswd '用戶(hù)密碼文件' 用戶(hù)名
示例:
?
刪除用戶(hù)
語(yǔ)法:
????htpasswd -D '用戶(hù)密碼文件' 用戶(hù)名
完整代碼示例:

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)

H?ufige Probleme und L?sungen für den variablen PHP -Umfang umfassen: 1. Die globale Variable kann innerhalb der Funktion nicht zugegriffen werden, und sie muss bei der Verwendung des globalen Schlüsselworts oder Parameters übergeben werden. 2. Die statische Variable wird statisch deklariert und nur einmal initialisiert und der Wert wird zwischen mehreren Aufrufen beibehalten. 3.. Hyperglobale Variablen wie $ _get und $ _post k?nnen direkt in jedem Bereich verwendet werden, aber Sie müssen auf eine sichere Filterung achten. 4. Die anonymen Funktionen müssen über das Schlüsselwort verwenden, und wenn Sie externe Variablen ?ndern, müssen Sie eine Referenz übergeben. Das Beherrschen dieser Regeln kann dazu beitragen, Fehler zu vermeiden und die Code -Stabilit?t zu verbessern.

Um PHP -Datei -Uploads sicher zu verarbeiten, müssen Sie die Quelle und die Type und die Eingabe des Dateinamens und des Pfades überprüfen, Serverbeschr?nkungen festlegen und Mediendateien zweimal verarbeiten. 1. überprüfen Sie die Upload -Quelle, um CSRF durch Token zu verhindern, und erkennen Sie den realen MIME -Typ über die Finfo_file mithilfe der Whitelist -Steuerung. 2. Benennen Sie die Datei in eine zuf?llige Zeichenfolge um und bestimmen Sie die Erweiterung, um sie gem?? dem Erkennungstyp in einem Verzeichnis ohne Web zu speichern. 3. Die PHP -Konfiguration begrenzt die Hochladengr??e und das tempor?re Verzeichnis Nginx/Apache verbietet den Zugriff auf das Upload -Verzeichnis. 4. Die GD -Bibliothek stellt die Bilder neu, um potenzielle b?swillige Daten zu l?schen.

Es gibt drei g?ngige Methoden für den PHP -Kommentarcode: 1. Verwenden Sie // oder #, um eine Codezeile zu blockieren, und es wird empfohlen, // zu verwenden. 2. Verwenden Sie /.../, um Codebl?cke mit mehreren Zeilen zu wickeln, die nicht verschachtelt werden k?nnen, aber gekreuzt werden k?nnen. 3.. Kombinationskenntnisse Kommentare wie die Verwendung / if () {} / Um Logikbl?cke zu steuern oder um die Effizienz mit Editor -Verknüpfungsschlüssel zu verbessern, sollten Sie auf die Schlie?ung von Symbolen achten und das Verschachteln bei der Verwendung vermeiden.

AgneeratorinphpiSamemory-effizientes WaytoiterateOverlargedatasetsByyieldingValueatimeinsteadofReturningThemallatonce.1.GeneratorsusetheyieldKeywordtoproduktenvaluesonDemand, ReducingMemoryUsage.2.TheyareusefulforfulforfulfordlingBiglopploups, Lesebiglochen, Leselungen, Lesebigs, Leselung, oder

Der Schlüssel zum Schreiben von PHP -Kommentaren liegt in der Kl?rung des Zwecks und der Spezifikationen. Kommentare sollten "Warum" und nicht "was getan" erkl?ren, um Redundanz oder zu Einfachheit zu vermeiden. 1. Verwenden Sie ein einheitliches Format wie Docblock (/*/) für Klassen- und Methodenbeschreibungen, um die Lesbarkeit und die Kompatibilit?t der Werkzeuge zu verbessern. 2. Betonen Sie die Gründe für die Logik, z. B. warum JS -Sprünge manuell ausgeben müssen. 3. Fügen Sie eine übersichtsbeschreibung vor komplexem Code hinzu, beschreiben Sie den Prozess in Schritten und helfen Sie, die Gesamtidee zu verstehen. V. Gute Anmerkungen k?nnen die Kommunikationskosten senken und die Effizienz der Code -Wartung verbessern.

Tolearnphpeffectival, startbysettingupalocalerverenVironmentusexs -LikexamppandacodeeditorikevScode.1) InstallxamppForapache, MySQL und Php.SeacodeeditorForsyntaxSupport.3) testyourscludingveliktingveliktelaThbiliodble.Neclyble.NektFile

In PHP k?nnen Sie quadratische Klammern oder lockige Klammern verwenden, um Zeichenfolgenspezifikationsspezifische Indexzeichen zu erhalten, aber quadratische Klammern werden empfohlen. Der Index startet von 0 und der Zugriff au?erhalb des Bereichs gibt einen Nullwert zurück und kann keinen Wert zugewiesen; MB_SUBSTR ist erforderlich, um Multi-Byte-Zeichen zu verarbeiten. Zum Beispiel: $ str = "Hallo"; echo $ str [0]; Ausgabe H; und chinesische Zeichen wie Mb_Substr ($ str, 1,1) müssen das richtige Ergebnis erzielen. In den tats?chlichen Anwendungen sollte die L?nge der Zeichenfolge vor dem Schleifen überprüft werden, dynamische Zeichenfolgen müssen für die Gültigkeit verifiziert werden, und mehrsprachige Projekte empfehlen, Multi-Byte-Sicherheitsfunktionen einheitlich zu verwenden.

Toinstallphpquickly, usexampponwindowsorhomebrewonmacos.1.onwindows, download undInstallxampp, SelectComponents, Startapache und PlaceFilesinhtdocscs.2.Anternativ, manuellinstallphpfrfr
