整合營(yíng)銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          重蔚的php學(xué)習(xí)第二天之HTML篇

          .昨日回顧

          服務(wù)器軟件:Apache、IIS

          瀏覽器是一個(gè)翻譯官,是一個(gè)解釋器。瀏覽器可以翻譯有HTML、CSS、JavaScript。

          服務(wù)器端腳本程序:PHP、 .net、JSP、c#等

          .php文件要由PHP腳本引擎來進(jìn)行處理。

          網(wǎng)站前臺(tái)(客戶端) 網(wǎng)站后臺(tái)(服務(wù)器端) 數(shù)據(jù)庫(kù)

          HTML(結(jié)構(gòu)) PHP MySQL

          CSS JSP Oracle

          JavaScript .net SqlServer

          HTML結(jié)構(gòu):主要來說明,哪個(gè)地方是標(biāo)題,哪個(gè)地方是段落,哪個(gè)地方是表格,哪個(gè)地方是表單。

          CSS表現(xiàn)(格式):主要功能是,給相對(duì)應(yīng)的HTML標(biāo)記定義各種各樣的格式。

          JavaScript行為:主要用于與計(jì)算機(jī)網(wǎng)頁(yè)進(jìn)行交互(交流)。

          塊元素和行內(nèi)元素

          塊元素:寬度單獨(dú)占一個(gè)通欄寬,塊元素的前臺(tái)的其它元素,都要另起一行來排。

          比如:<p> <pre> <hr> <h1>……<h6> <ul> <ol> <li>

          DIV和SPAN就是一個(gè)容器,容器中可以存放任何可以存放在<body>中的內(nèi)容或標(biāo)記。

          行內(nèi)元素:行內(nèi)元素沒有寬度和高度的概念,也就是說通過CSS無法給行內(nèi)元素增加寬和高。多個(gè)行內(nèi)元素會(huì)放在同一行,不會(huì)另起一行來排版。

          2.<marquee></marquee>滾動(dòng)字幕標(biāo)記:塊元素

          Direction:滾動(dòng)的方向,取值:left、right、up、down

          Behavior:滾動(dòng)的方式,取值:scroll(滾動(dòng))、 alternate(彈動(dòng))、 slide(滾動(dòng)一次)

          Width:滾動(dòng)的區(qū)域?qū)挾龋≈担簆x或%

          Height;滾動(dòng)的區(qū)域高度

          bgColor:背景顏色,如:bgcolor=“#FF0000” bgcolor=“rgb(255,0,0)”

          scrollAmount:滾動(dòng)步長(zhǎng)值,一步走多遠(yuǎn),值越大,走的越快

          scrollDelay:兩次滾動(dòng)的間隔時(shí)間,以毫秒為單位 1秒=1000毫秒

          3.計(jì)算機(jī)進(jìn)制

          進(jìn)制,就是一種進(jìn)位方法。

          10進(jìn)制:有10個(gè)基本數(shù),0、1、2、3、4、5、6、7、8、9,運(yùn)算規(guī)則是:逢十進(jìn)一

          例如:9 10 19 20 29 30

          2進(jìn)制:有2個(gè)基本數(shù),0、 1,運(yùn)算規(guī)則是:逢二進(jìn)一。比如:(10)2 11 100 101 110

          8進(jìn)制:有8個(gè)基本數(shù),0、1、2、3、4、5、6、7,運(yùn)算規(guī)則是:逢八進(jìn)一。比如:(17)8 20 21 26 27 30

          因?yàn)槎M(jìn)制太長(zhǎng),不方便記憶,因此小型機(jī)引入了八進(jìn)制,八進(jìn)制可以很好的反應(yīng)二進(jìn)制。

          因此,一個(gè)八進(jìn)制數(shù),用3位二進(jìn)制數(shù)來表示。

          基R=2^3

          16進(jìn)制:有16個(gè)基本數(shù),0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F,運(yùn)算規(guī)則是:逢16進(jìn)一

          比如:EF F0 F1 F2 FE FF (100)16

          16進(jìn)制的一位對(duì)應(yīng)4位二進(jìn)制。基R=2^4

          10進(jìn)制12345678910111213141516171819
          2進(jìn)制1101110010111011110001001101010111100
          8進(jìn)制1234567101112131415161720
          16進(jìn)制123456789ABCDEF10111213

          十進(jìn)制轉(zhuǎn)成二進(jìn)制

          分為整數(shù)部分和小數(shù)部分,分別轉(zhuǎn)換。比如:將(10.125)10轉(zhuǎn)成二進(jìn)制? 1010.001

          (1)整數(shù)部分轉(zhuǎn)成二進(jìn)制:2取余法。每次將整數(shù)除以2,取余數(shù),一直除下去,直到整數(shù)部分(商)為0。最后讀數(shù)時(shí),從下往上讀取。

          N整數(shù)10余數(shù)
          第1次10/250
          第2次5/221
          第3次2/210
          第4次1/201最后結(jié)果為:1010

          (2)小數(shù)部分轉(zhuǎn)成二進(jìn)制:2除整法。每次將小數(shù)部分乘以2,取整數(shù),一直乘下去,直到小數(shù)部分為0。最后讀數(shù)時(shí),從上往下讀取。

          N小數(shù)0.125整數(shù)
          第1次0.125*20.250
          第2次0.25*20.50
          第3次0.5*21.01
          最后結(jié)果為:001

          二進(jìn)制轉(zhuǎn)成十進(jìn)制

          不分整數(shù)部分和小數(shù)部分,按權(quán)相加法。換句話說:二進(jìn)制上的每一位,乘以所在位權(quán)(也就是2的幾次方),最后將各個(gè)位的乘相加,就能得到十進(jìn)制。

          1010.001 = 1*2^3 + 0*2^2 + 1*2^1 + 0*2^0 + 0*2^-1 + 0*2^-2 + 1*2^-3 = 8+2+ 1/8 = 10+0.125 = 10.125

          4.計(jì)算機(jī)編碼介紹(字符集)

          計(jì)算機(jī)只能二進(jìn)制,比如:a-z、A-Z、0-9、標(biāo)點(diǎn)符號(hào),計(jì)算機(jī)都不能直接識(shí)別。每個(gè)人都可以來約定一套字符編碼(比如:a用二進(jìn)制100表示,b用二進(jìn)制101表示,c用二進(jìn)制的110表示等)

          計(jì)算機(jī)是由美國(guó)人發(fā)明的,美國(guó)標(biāo)準(zhǔn)化局同樣制定了一套統(tǒng)一的編碼,叫ASCII碼。

          ASCII

          ASCII編碼用7位或8位(1個(gè)字節(jié))二進(jìn)制來表示,共可以表示128或256個(gè)字符。包括:大小寫字母、數(shù)字、標(biāo)點(diǎn)符號(hào)、圖形符號(hào)等。

          5.ANSI編碼

          每個(gè)國(guó)家都想讓計(jì)算機(jī)能顯示或處理本國(guó)的語(yǔ)言,都對(duì)ASCII碼進(jìn)行了擴(kuò)展。

          在中國(guó)(簡(jiǎn)體字),ANSI編碼是指GB2312或GBK。

          在臺(tái)灣(繁體字),ANSI編碼是指BIG5

          在日本,ANSI編碼是指JIS。

          ……

          注意:ANSI編碼是跟隨操作一齊安裝的,也就是,安裝了中文操作系統(tǒng)后,它的默認(rèn)編碼就是GB2312。

          6.GB2312編碼

          GB2312是中國(guó)標(biāo)準(zhǔn)化局,在1980年制定的一套顯示簡(jiǎn)體中文的編碼。

          GB2312是用2個(gè)字節(jié)來顯示。共可以表示2^16=256*256=65536個(gè)字符。

          GB2312共保存了6763個(gè)常用漢字,一級(jí)漢字3700個(gè)。

          GBK編碼

          對(duì)GB2312進(jìn)行了擴(kuò)充,可以顯示人名、古漢語(yǔ)中的一些罕見字等。

          GBK也是用2個(gè)字節(jié)來表示。共存儲(chǔ)了2.3萬個(gè)左右的中文字符。

          GBK的范圍,要比GB2312大的多。

          BIG5編碼

          BIG5用于臺(tái)灣、香港、澳門地區(qū)的繁體中文編碼。

          Unicode編碼

          用4個(gè)字節(jié)表示字符,共可以表示42個(gè)億個(gè)字符。

          Unicode編碼可以顯示世界上所有國(guó)家的語(yǔ)言。

          缺點(diǎn):文件龐大,效率不高,不利于推廣。

          UTF-8統(tǒng)一格式轉(zhuǎn)換

          它會(huì)自動(dòng)根據(jù)不同的字符,來選擇不同編碼長(zhǎng)度。

          7.<meta>標(biāo)記

          <meta>標(biāo)記是設(shè)置一些網(wǎng)頁(yè)文件頭方面的信息。主要包括:網(wǎng)頁(yè)編碼或字符集設(shè)置、網(wǎng)頁(yè)關(guān)鍵字、網(wǎng)頁(yè)描述、網(wǎng)頁(yè)刷新跳轉(zhuǎn)等。相當(dāng)于一封信的信封,信封有地址、郵編等重要。

          <head>標(biāo)記中的內(nèi)容在瀏覽器中,是不可見的。

          主要用兩個(gè)常用的屬性:

          http-equiv:主要設(shè)置一些控制信息,屬性值是固定的。比如:content-type

          name:一般用于設(shè)置網(wǎng)頁(yè)描述信息,像關(guān)鍵字、網(wǎng)頁(yè)描述、網(wǎng)頁(yè)版權(quán)、作者等,屬性值是固定的。比如:keywords

          content:是具體的參數(shù)或內(nèi)容,與http-equiv和name屬性進(jìn)行對(duì)應(yīng)。

          (1)設(shè)置網(wǎng)頁(yè)的字符集或編碼

          <meta http-equiv=“content-type” content=“text/html;charset=GBK”>

          (2)設(shè)置網(wǎng)頁(yè)刷新或跳轉(zhuǎn)

          <meta http-equiv=“refresh” content=“5”> 表示每隔5秒鐘,刷新網(wǎng)頁(yè)

          <meta http-equiv=“refresh” content=“5;url=http://www.baidu.com”> 表示5秒鐘后,跳轉(zhuǎn)到百度網(wǎng)

          注意:刷新功能相當(dāng)于瀏覽器中的刷新按鈕

          (3)設(shè)置網(wǎng)頁(yè)關(guān)鍵字(SEO優(yōu)化),給搜索引擎(搜索機(jī)器人)使用

          <meta name=“keywords” content=“程序開發(fā),平面設(shè)置,空間域名,網(wǎng)站維護(hù)”>

          (4)設(shè)置網(wǎng)頁(yè)描述信息(SEO優(yōu)化)

          <meta name=“description” content=“廣州網(wǎng)站建設(shè)思優(yōu)網(wǎng)絡(luò)公司,提供專業(yè)廣州網(wǎng)站制作及網(wǎng)站推廣相結(jié)合的建站方案,由專業(yè)廣州網(wǎng)站設(shè)計(jì)人員結(jié)合搜索引擎優(yōu)化經(jīng)驗(yàn)為您設(shè)計(jì)網(wǎng)站;廣州網(wǎng)頁(yè)設(shè)計(jì):020-87537332”>

          8.XHTML

          XHTML是可擴(kuò)展超文本標(biāo)注語(yǔ)言,XHTML是更純凈的HTML,語(yǔ)法更嚴(yán)格。

          XHTML的目的是為了取代HTML4.01。

          XHTML是W3C的一個(gè)標(biāo)準(zhǔn)或規(guī)范。

          編寫XHTML的規(guī)范,與HTML編寫有何不同?

          1)所有的標(biāo)記都必須被關(guān)閉。比如:<br>轉(zhuǎn)換<br /> <hr>轉(zhuǎn)換后 <hr />

          2)XHTML要求所有的標(biāo)記名稱必須小寫。比如:<meta><table><img><font>

          3)XHTML要求所有的屬性名必須小寫,屬性值必須加引號(hào)

          4)XHTML要求所有的屬性必須有值

          <hr noshade=noshade />

          <input type=radio checked=checked />

          5)所有的標(biāo)記要順序嵌套,不能交叉嵌套;

          6)XHTML文件,必須要有DTD文檔類型定義;

          DTD(Document Type Define)文檔類型定義

          (1)嚴(yán)格型Strict

          要求HTML代中,不能存在任何的表現(xiàn),用CSS去代替。比如:<font>、bgcolor、background等

          <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

          2)過渡型transitional

          可以使用任何表現(xiàn)的標(biāo)記或?qū)傩浴?/p>

          <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

          (3)框架型Frameset

          制作框架網(wǎng)頁(yè)時(shí)使用的一種類型,框架主要用于網(wǎng)站的后臺(tái)管理。

          框架技術(shù):是將一個(gè)瀏覽器窗口劃分成不同區(qū)域,每個(gè)區(qū)域(窗口)都可以顯示一個(gè)獨(dú)立的網(wǎng)頁(yè)。(HTML第四天單獨(dú)講框架,現(xiàn)在作個(gè)了解

          9.W3C簡(jiǎn)介

          W3C是萬維網(wǎng)聯(lián)盟,是一個(gè)國(guó)際性的非盈利性組織,是WEB領(lǐng)域最具權(quán)威性的組織。已經(jīng)制定多達(dá)200多項(xiàng)的標(biāo)準(zhǔn)。

          比如:XHTML、CSS、ECMAScript(JavaScript)、DOM、 XML等。

          10.超級(jí)鏈接

          超級(jí)鏈接的功能:就是點(diǎn)擊某個(gè)鏈接,可以跳轉(zhuǎn)到目標(biāo)頁(yè)面或文件。

          超級(jí)鏈接的分類:

          (1)按內(nèi)容分類:文本鏈接、圖片鏈接、多媒體等

          (2)按URL分類:相對(duì)URL、絕對(duì)URL、錨點(diǎn)

          URL,指網(wǎng)址或路徑

          URL(Uniform Resource Locator,統(tǒng)一資源定位器),也就是指互聯(lián)網(wǎng)地址。

          http://www.sina.com.cn/about/index.html

          第一個(gè)部分:協(xié)議,指訪問什么類型的服務(wù)器,如:http://FTP://news://

          第二個(gè)部分:主機(jī)名或主機(jī)的IP地址。如:www.sina.com.cn

          第三個(gè)部分:文件夾名,如:about

          第四個(gè)部分:文件名,如:index.html

          11.<a></a>超級(jí)鏈接的標(biāo)記

          格式:<a 屬性=“屬性值”>新浪網(wǎng)</a>

          常用的屬性:

          Href:指鏈接的目標(biāo)文件或網(wǎng)址。比如:href=“http://www.toutiao.com”

          Target:指目標(biāo)文件的打開方式。

          _blank:在新窗口中,來打開目標(biāo)文件;

          _self:在當(dāng)前窗口中,來打開目標(biāo)文件;

          _top:在最頂層窗口中,來打開目標(biāo)文件(在框架中講);

          _parent:在父窗口中,來打開目標(biāo)文件(在框架中講)

          Name:設(shè)置錨點(diǎn)的名稱。錨點(diǎn)是指:鏈接到同一個(gè)頁(yè)面的不同部分

          舉例:<a href=http://www.toutiao.com target=“_blank”>頭條號(hào)</a>

          12.相對(duì)路徑和絕對(duì)路徑

          絕對(duì)URL:它總是以file:///協(xié)議開頭,去訪問目標(biāo)文件。

          如果將當(dāng)前文件移動(dòng)到其它地方,這個(gè)絕對(duì)URL路徑不需要修改。

          絕對(duì)URL,只需要確定目標(biāo)文件的路徑即可,與當(dāng)前文件位置無關(guān)。

          例如:<a href=“file:///E:/itcast/20140510/lesson/day2/4.html”>本地絕對(duì)路徑</a>

          相對(duì)URL:要確定當(dāng)前文件與目標(biāo)文件的關(guān)系。

          關(guān)系分為三種:

          平級(jí)關(guān)系:直接寫目標(biāo)文件的文件名即可。

          下級(jí)關(guān)系:也就是目標(biāo)文件所在的文件夾與當(dāng)前文件是平級(jí)關(guān)系,當(dāng)前文件與目標(biāo)文件是上下級(jí)關(guān)系。

          上級(jí)關(guān)系:目標(biāo)文件位于上一層級(jí)。

          ../代表上一層文件夾

          ../../代表上二層文件夾

          ../../images/01.jpg

          提示:在制作網(wǎng)站時(shí),一般使用的都是相對(duì)路徑。

          (3)下載鏈接:如果鏈接到的文件,網(wǎng)頁(yè)不能直接執(zhí)行的話,都會(huì)出現(xiàn)下載提示。

          瀏覽器可以直接執(zhí)行的文件:.gif、.jpg、.png、html、.htm、.mp3、.swf等

          (4)郵箱鏈接:mailto:beijing2000@126.com

          13.錨點(diǎn)鏈接:指鏈接到一個(gè)網(wǎng)頁(yè)的不同地方

          第一步:定義一個(gè)錨點(diǎn)或標(biāo)記 <a name=“top”></a>

          第二步:鏈接到錨點(diǎn)或標(biāo)記 <a href=“#top”>返回頂部</a>

          <a href=“intro.html#bottom”>鏈接到intro.html的底部</a>

          14.<img>圖片標(biāo)記,單邊標(biāo)記

          格式:<img 屬性=“屬性值” />

          常用的屬性:

          Src:指圖片的URL,可以是相對(duì)路徑,也可以是絕對(duì)路徑。

          Width:指圖片的寬度,單位px或%

          Height:指圖片的高度

          Align:圖片的水平對(duì)齊方式,取值:left center right ,leftright可以實(shí)現(xiàn)圖文混排

          Alt:如果圖片不存在時(shí),顯示的提示信息

          Hspace:圖片左右的距離

          Vspace:圖片上下的距離

          舉例:<img src=“images/01.gif” width=“400” height=“300” alt=“寶寶圖片” />

          如果保證圖片在調(diào)整過程中不變形(等比例縮放):只需要設(shè)置widthheight其中一個(gè)即可,另一個(gè)會(huì)自動(dòng)縮放。

          xeOutput for PHP 是一個(gè)工具,用于將 PHP 應(yīng)用程序轉(zhuǎn)換為本地可執(zhí)行文件(EXE 文件),使得應(yīng)用程序可以在 Windows 系統(tǒng)上獨(dú)立運(yùn)行,無需 PHP 解釋器的安裝。

          功能和特點(diǎn):

          1. 編譯成本地應(yīng)用程序: ExeOutput for PHP 可以將 PHP 腳本編譯成獨(dú)立的 EXE 可執(zhí)行文件。這使得 PHP 應(yīng)用程序不再需要依賴于 Web 服務(wù)器或 PHP 解釋器,可以像常規(guī)的桌面應(yīng)用程序一樣運(yùn)行。
          2. 支持 PHP 和 Web 技術(shù): 盡管生成的是本地應(yīng)用程序,ExeOutput for PHP 仍然支持 PHP 語(yǔ)法和許多常見的 Web 技術(shù),如 HTML、CSS、JavaScript。這使得開發(fā)者可以利用熟悉的工具和技術(shù)進(jìn)行應(yīng)用程序開發(fā)。
          3. Windows 集成和兼容性: 生成的應(yīng)用程序與 Windows 系統(tǒng)深度集成,可以利用 Windows 的原生功能和接口。這包括對(duì) Windows 版本的廣泛兼容性和支持,確保應(yīng)用程序在各種 Windows 環(huán)境下穩(wěn)定運(yùn)行。
          4. 高度定制化: ExeOutput for PHP 提供了豐富的定制選項(xiàng),開發(fā)者可以根據(jù)需要調(diào)整應(yīng)用程序的外觀、行為和功能。這包括添加自定義圖標(biāo)、設(shè)置應(yīng)用程序的運(yùn)行行為、集成第三方組件等。
          5. 易于部署和分發(fā): 生成的 EXE 文件可以簡(jiǎn)單地分發(fā)給用戶,用戶無需安裝額外的軟件或配置 PHP 環(huán)境即可運(yùn)行應(yīng)用程序。這簡(jiǎn)化了應(yīng)用程序的部署和更新過程。

          使用場(chǎng)景:

          • 桌面應(yīng)用程序開發(fā):適用于需要將 PHP 網(wǎng)頁(yè)應(yīng)用程序轉(zhuǎn)換為桌面應(yīng)用程序的場(chǎng)景,如工具、編輯器、客戶端應(yīng)用等。
          • 獨(dú)立運(yùn)行的工具:用于開發(fā)不依賴于 Web 服務(wù)器的工具或?qū)嵱贸绦颍鐢?shù)據(jù)處理工具、報(bào)表生成器等。
          • 教育和培訓(xùn):用于創(chuàng)建教育課件、培訓(xùn)程序等,使其在 Windows 環(huán)境下獨(dú)立運(yùn)行。

          ExeOutput for PHP 提供了將 PHP 應(yīng)用程序轉(zhuǎn)換為獨(dú)立桌面應(yīng)用程序的解決方案,適用于需要便捷、高性能和獨(dú)立部署的應(yīng)用開發(fā)場(chǎng)景。

          ExeOutput for PHP 的功能可以大致分類如下:

          1. PHP 應(yīng)用程序轉(zhuǎn)換
          2. 將 PHP 網(wǎng)頁(yè)應(yīng)用程序轉(zhuǎn)換為本地可執(zhí)行文件(EXE 文件)。
          3. 支持將 PHP 腳本、HTML、CSS、JavaScript 等 Web 技術(shù)編譯成獨(dú)立運(yùn)行的桌面應(yīng)用程序。
          4. Windows 集成和支持
          5. 充分利用 Windows 系統(tǒng)的功能和接口。
          6. 支持 Windows 的各種版本和特性,確保生成的應(yīng)用程序在不同的 Windows 環(huán)境中穩(wěn)定運(yùn)行。
          7. 定制化和配置
          8. 提供豐富的定制選項(xiàng),允許開發(fā)者根據(jù)需求調(diào)整應(yīng)用程序的外觀和行為。
          9. 包括設(shè)置應(yīng)用程序圖標(biāo)、窗口樣式、啟動(dòng)行為等選項(xiàng)。
          10. 兼容性和性能優(yōu)化
          11. 優(yōu)化生成的應(yīng)用程序的性能,確保在不依賴于服務(wù)器的情況下仍然能夠高效運(yùn)行。
          12. 提供性能調(diào)優(yōu)選項(xiàng),以確保應(yīng)用程序在桌面環(huán)境中具有良好的響應(yīng)速度和穩(wěn)定性。
          13. 部署和分發(fā)
          14. 簡(jiǎn)化應(yīng)用程序的部署過程,生成的 EXE 文件可以輕松分發(fā)給用戶。
          15. 用戶無需安裝額外的軟件或配置 PHP 環(huán)境即可運(yùn)行應(yīng)用程序。
          16. 擴(kuò)展性和第三方集成
          17. 支持集成第三方組件和庫(kù),以擴(kuò)展應(yīng)用程序的功能。
          18. 允許開發(fā)者利用現(xiàn)有的 PHP 應(yīng)用程序基礎(chǔ),添加自定義的功能和模塊。
          19. 安全性
          20. 提供安全性選項(xiàng),確保生成的應(yīng)用程序能夠在安全的桌面環(huán)境中運(yùn)行。
          21. 避免了在公共服務(wù)器上運(yùn)行應(yīng)用程序可能遇到的安全風(fēng)險(xiǎn)和訪問控制問題。

          這些功能使得 ExeOutput for PHP 成為開發(fā)者將 PHP 應(yīng)用程序轉(zhuǎn)換為獨(dú)立桌面應(yīng)用程序的有力工具,適用于各種需要桌面化的 PHP 應(yīng)用場(chǎng)景。

          ExeOutput for PHP 的底層原理涉及以下幾個(gè)關(guān)鍵步驟和技術(shù):

          1. 編譯和打包: ExeOutput for PHP 將 PHP 網(wǎng)頁(yè)應(yīng)用程序的源代碼、HTML、CSS、JavaScript 和其他資源文件,通過自身的編譯器進(jìn)行處理和編譯。這個(gè)過程將這些文件整合并編譯成一個(gè)單獨(dú)的可執(zhí)行文件(EXE 文件)。
          2. PHP 解釋器集成: 雖然生成的應(yīng)用程序是本地 EXE 文件,但 ExeOutput for PHP 實(shí)際上集成了 PHP 解釋器(基于 PHP-CGI 或 PHP-CLI),這樣生成的應(yīng)用程序可以在用戶的計(jì)算機(jī)上獨(dú)立運(yùn)行,而無需用戶安裝額外的 PHP 環(huán)境。
          3. Web 技術(shù)支持: ExeOutput for PHP 不僅支持 PHP 語(yǔ)法和功能,還支持常見的 Web 技術(shù),如 HTML、CSS、JavaScript 等。這些技術(shù)被嵌入到生成的應(yīng)用程序中,使得應(yīng)用程序能夠模擬 Web 環(huán)境中的頁(yè)面和交互功能。
          4. Windows 集成和原生支持: 生成的應(yīng)用程序與 Windows 系統(tǒng)深度集成,利用 Windows 的原生 API 和功能。這確保了應(yīng)用程序在 Windows 操作系統(tǒng)上的行為和外觀與其他本地應(yīng)用程序保持一致。
          5. 資源管理和打包: ExeOutput for PHP 負(fù)責(zé)管理和打包應(yīng)用程序中的所有資源,包括圖片、CSS 文件、JavaScript 文件等。這些資源被整合到生成的 EXE 文件中,使得應(yīng)用程序在不依賴于外部文件或網(wǎng)絡(luò)的情況下能夠完整運(yùn)行。
          6. 性能優(yōu)化和安全性: 在將 PHP 應(yīng)用程序轉(zhuǎn)換為桌面應(yīng)用程序的過程中,ExeOutput for PHP 會(huì)對(duì)代碼和資源進(jìn)行優(yōu)化,以提高應(yīng)用程序的性能和安全性。這包括文件壓縮、代碼混淆等技術(shù),以減少生成的 EXE 文件的大小和提升運(yùn)行效率。

          ExeOutput for PHP 的底層原理是通過將 PHP 網(wǎng)頁(yè)應(yīng)用程序編譯和打包成一個(gè)本地可執(zhí)行文件,集成必要的 PHP 解釋器和 Web 技術(shù)支持,使得開發(fā)者可以將 Web 應(yīng)用程序轉(zhuǎn)換為獨(dú)立的桌面應(yīng)用程序,從而在 Windows 系統(tǒng)上獨(dú)立運(yùn)行。

          ExeOutput for PHP 的工作原理可以概括為以下幾個(gè)關(guān)鍵步驟和技術(shù):

          1. 項(xiàng)目設(shè)置和配置: 開發(fā)者首先使用 ExeOutput for PHP 的開發(fā)環(huán)境,配置項(xiàng)目的各種參數(shù)和選項(xiàng)。這包括設(shè)置應(yīng)用程序的圖標(biāo)、窗口風(fēng)格、啟動(dòng)行為等。
          2. 應(yīng)用程序編譯和打包: 開發(fā)者將 PHP 網(wǎng)頁(yè)應(yīng)用程序的源代碼、HTML、CSS、JavaScript 等資源文件導(dǎo)入到 ExeOutput for PHP 中。ExeOutput for PHP 會(huì)將這些文件編譯和打包成一個(gè)單獨(dú)的可執(zhí)行文件(EXE 文件)。
          3. 集成 PHP 解釋器: 盡管生成的應(yīng)用程序是本地 EXE 文件,但它包含了一個(gè)集成的 PHP 解釋器(通常是基于 PHP-CGI 或 PHP-CLI 的版本)。這使得生成的應(yīng)用程序在用戶的計(jì)算機(jī)上可以獨(dú)立運(yùn)行,無需用戶安裝額外的 PHP 環(huán)境。
          4. 模擬 Web 環(huán)境: ExeOutput for PHP 在生成的應(yīng)用程序中模擬了 Web 環(huán)境的關(guān)鍵部分,包括 HTTP 請(qǐng)求和響應(yīng)機(jī)制。這樣,應(yīng)用程序可以處理用戶的交互,如表單提交、URL 跳轉(zhuǎn)等操作。
          5. Windows 集成和特性利用: 生成的應(yīng)用程序與 Windows 操作系統(tǒng)深度集成,利用 Windows 的原生 API 和特性。這確保了應(yīng)用程序在 Windows 下的行為和外觀與其他本地應(yīng)用程序保持一致,包括窗口管理、文件操作等功能。
          6. 資源管理和優(yōu)化: ExeOutput for PHP 負(fù)責(zé)管理和打包應(yīng)用程序中的所有資源,如圖片、CSS、JavaScript 等文件。這些資源被嵌入到生成的 EXE 文件中,使得應(yīng)用程序在不依賴外部文件或網(wǎng)絡(luò)的情況下能夠完整運(yùn)行。
          7. 性能和安全性: 在轉(zhuǎn)換和打包過程中,ExeOutput for PHP 會(huì)對(duì)應(yīng)用程序進(jìn)行優(yōu)化,包括文件壓縮、代碼混淆等技術(shù),以提高應(yīng)用程序的性能和安全性。這些優(yōu)化措施有助于減少生成的 EXE 文件的大小并提升運(yùn)行效率。

          ExeOutput for PHP 的工作原理是通過將 PHP 網(wǎng)頁(yè)應(yīng)用程序編譯和打包成一個(gè)本地可執(zhí)行文件,同時(shí)集成必要的 PHP 解釋器和模擬 Web 環(huán)境的功能,從而使得開發(fā)者可以將原本的 Web 應(yīng)用程序轉(zhuǎn)換為獨(dú)立的桌面應(yīng)用程序,適合在 Windows 環(huán)境中獨(dú)立運(yùn)行。

          ExeOutput for PHP 的架構(gòu)設(shè)計(jì)主要包括以下幾個(gè)關(guān)鍵組成部分:

          1. 開發(fā)環(huán)境: 開發(fā)者使用 ExeOutput for PHP 提供的集成開發(fā)環(huán)境(IDE),在此環(huán)境中進(jìn)行應(yīng)用程序的配置、開發(fā)和調(diào)試。這個(gè)環(huán)境提供了界面和工具,幫助開發(fā)者管理項(xiàng)目、設(shè)置應(yīng)用程序的外觀和行為,并預(yù)覽應(yīng)用程序在生成后的運(yùn)行效果。
          2. 編譯器和打包器: ExeOutput for PHP 包含了一個(gè)專門的編譯器和打包器,用于將 PHP 網(wǎng)頁(yè)應(yīng)用程序的源代碼、HTML、CSS、JavaScript 等文件,編譯和打包成一個(gè)單獨(dú)的可執(zhí)行文件(EXE 文件)。這個(gè)過程不僅僅是簡(jiǎn)單地打包文件,還涉及到資源管理、代碼優(yōu)化等技術(shù)。
          3. 集成的 PHP 解釋器: 生成的應(yīng)用程序中集成了一個(gè) PHP 解釋器,通常是基于 PHP-CGI 或 PHP-CLI 的版本。這個(gè)解釋器使得應(yīng)用程序可以在用戶的計(jì)算機(jī)上獨(dú)立運(yùn)行,而無需用戶單獨(dú)安裝和配置 PHP 環(huán)境。
          4. Web 環(huán)境模擬: ExeOutput for PHP 在生成的應(yīng)用程序中模擬了一部分 Web 環(huán)境的功能,包括 HTTP 請(qǐng)求和響應(yīng)機(jī)制。這樣,應(yīng)用程序可以處理用戶的交互行為,如表單提交、頁(yè)面跳轉(zhuǎn)等操作,從而讓用戶體驗(yàn)到類似于 Web 應(yīng)用程序的交互方式。
          5. Windows 集成和原生支持: 生成的應(yīng)用程序與 Windows 操作系統(tǒng)深度集成,利用 Windows 的原生 API 和功能。這包括窗口管理、文件操作、圖標(biāo)顯示等,確保應(yīng)用程序在 Windows 平臺(tái)上的外觀和行為符合用戶的期望。
          6. 資源管理和優(yōu)化: ExeOutput for PHP 負(fù)責(zé)管理和打包應(yīng)用程序中的所有資源,如圖片、CSS、JavaScript 等文件。這些資源被整合到生成的 EXE 文件中,使得應(yīng)用程序在不依賴外部文件或網(wǎng)絡(luò)的情況下能夠完整運(yùn)行。同時(shí),ExeOutput 還會(huì)對(duì)應(yīng)用程序進(jìn)行優(yōu)化,包括文件壓縮、代碼混淆等,以提高應(yīng)用程序的性能和安全性。
          7. 運(yùn)行時(shí)環(huán)境: 用戶在其計(jì)算機(jī)上運(yùn)行生成的 EXE 文件時(shí),會(huì)啟動(dòng)集成的 PHP 解釋器,并在 Windows 環(huán)境中執(zhí)行應(yīng)用程序。這個(gè)運(yùn)行時(shí)環(huán)境保證了應(yīng)用程序能夠在用戶端正常運(yùn)行和交互,同時(shí)與本地的操作系統(tǒng)和資源進(jìn)行有效的集成。

          ExeOutput for PHP 的架構(gòu)設(shè)計(jì)旨在通過將 PHP 網(wǎng)頁(yè)應(yīng)用程序轉(zhuǎn)換為本地的桌面應(yīng)用程序,從而讓開發(fā)者能夠更方便地將其部署和分發(fā)給用戶,同時(shí)在用戶端提供類似于 Web 應(yīng)用程序的交互體驗(yàn)。

          ExeOutput for PHP 主要適用于以下幾種應(yīng)用場(chǎng)景:

          1. 將 Web 應(yīng)用轉(zhuǎn)換為桌面應(yīng)用: 開發(fā)者可以利用 ExeOutput for PHP 將已有的 PHP 網(wǎng)頁(yè)應(yīng)用程序,如在線工具、管理系統(tǒng)、電子商務(wù)平臺(tái)等,轉(zhuǎn)換為獨(dú)立的桌面應(yīng)用程序。這種轉(zhuǎn)換能夠?yàn)橛脩籼峁└庇^和便捷的使用體驗(yàn),同時(shí)利用桌面環(huán)境的優(yōu)勢(shì),如更快的訪問速度、離線使用等。
          2. 內(nèi)部工具和管理系統(tǒng): 公司或組織內(nèi)部的各種工具、管理系統(tǒng)和信息展示平臺(tái),通常是基于 Web 技術(shù)開發(fā)的。通過 ExeOutput for PHP,可以將這些內(nèi)部系統(tǒng)轉(zhuǎn)換為桌面應(yīng)用程序,提高員工使用的便捷性和效率,同時(shí)簡(jiǎn)化部署和更新的流程。
          3. 原型開發(fā)和演示: 開發(fā)人員可以利用 ExeOutput for PHP 快速將原型或演示版本的 Web 應(yīng)用程序轉(zhuǎn)換為桌面應(yīng)用,以便客戶或團(tuán)隊(duì)進(jìn)行評(píng)審和反饋。這種轉(zhuǎn)換不僅能夠展示應(yīng)用的基本功能,還能模擬用戶體驗(yàn),加深對(duì)最終產(chǎn)品的理解和認(rèn)可。
          4. 電子書和培訓(xùn)資料: 作者和培訓(xùn)者可以使用 ExeOutput for PHP 將他們的電子書、在線培訓(xùn)課程或?qū)W習(xí)資料轉(zhuǎn)換為桌面應(yīng)用程序,使得學(xué)習(xí)者可以在離線狀態(tài)下訪問和學(xué)習(xí)內(nèi)容,提高學(xué)習(xí)的靈活性和效率。
          5. 輕量級(jí)工具和小型應(yīng)用: 需要開發(fā)簡(jiǎn)單但功能完整的桌面應(yīng)用程序的情況,如小工具、日程管理工具、筆記應(yīng)用等,ExeOutput for PHP 提供了一個(gè)快速開發(fā)和部署的解決方案。開發(fā)者可以利用現(xiàn)有的 Web 開發(fā)技能和資源,快速實(shí)現(xiàn)這些應(yīng)用的開發(fā)和發(fā)布。

          ExeOutput for PHP 適合那些希望將現(xiàn)有的 PHP 網(wǎng)頁(yè)應(yīng)用程序轉(zhuǎn)換為桌面應(yīng)用,并且能夠在桌面環(huán)境中提供更優(yōu)秀用戶體驗(yàn)的開發(fā)者和組織。

          ySQL 是世界上最流行的開源數(shù)據(jù)庫(kù)系統(tǒng),MariaDB(一個(gè) MySQL 分支)是世界上增長(zhǎng)最快的開源數(shù)據(jù)庫(kù)系統(tǒng)。在安裝 MySQL 服務(wù)器之后,在默認(rèn)配置下是不安全的,確保數(shù)據(jù)庫(kù)安全通常是通用數(shù)據(jù)庫(kù)管理的基本任務(wù)之一。

          這將有助于增強(qiáng)和提升整個(gè) Linux 服務(wù)器的安全性,因?yàn)楣粽呖偸菕呙柘到y(tǒng)任意部分的漏洞,而數(shù)據(jù)庫(kù)在過去是重點(diǎn)目標(biāo)區(qū)域。一個(gè)常見的例子是對(duì) MySQL 數(shù)據(jù)庫(kù)的 root 密碼的強(qiáng)制破解。

          在本指南中,我們將會(huì)講解對(duì)開發(fā)者有幫助的 MySQL/MariaDB 的 Linux 最佳安全實(shí)踐。

          1. 安全地安裝 MySQL

          這是安裝 MySQL 服務(wù)器后第一個(gè)建議的步驟,用于保護(hù)數(shù)據(jù)庫(kù)服務(wù)器。這個(gè)腳本可以幫助您提高 MySQL 服務(wù)器的安全性:

          • 如果您在安裝期間沒有設(shè)置 root 帳戶的密碼,馬上設(shè)置它
          • 通過刪除可從本地主機(jī)外部訪問的 root 帳戶來禁用遠(yuǎn)程 root 用戶登錄
          • 刪除匿名用戶帳戶和測(cè)試數(shù)據(jù)庫(kù),默認(rèn)情況下,所有用戶、甚至匿名用戶都可以訪問這些帳戶和測(cè)試數(shù)據(jù)庫(kù)
          # mysql_secure_installation

          在運(yùn)行上述命令之后,設(shè)置 root 密碼并通過輸入 [Yes/Y] 和按下 [Enter] 鍵來回答一系列問題。

          img

          安全安裝 MySQL 情況界面

          2. 將數(shù)據(jù)庫(kù)服務(wù)器綁定到 Loopback 地址

          此配置將限制來自遠(yuǎn)程機(jī)器的訪問,它告訴 MySQL 服務(wù)器只接受來自本地主機(jī)的連接。你可以在主配置文件中進(jìn)行設(shè)置。

          # vi /etc/my.cnf	                   [RHEL/CentOS]	
          # vi /etc/mysql/my.conf                    [Debian/Ubuntu] 
          OR
          # vi /etc/mysql/mysql.conf.d/mysqld.cnf    [Debian/Ubuntu]

          在 [mysqld] 部分中添加下面這一行

          bind-address = 127.0.0.1

          3. 禁用 MySQL 的 LOCAL INFILE

          作為安全性增強(qiáng)的一部分,您需要禁用 local_infile,使用下面的指令以防止在 [mysqld] 部分從 MySQL 中訪問底層文件系統(tǒng)。

          local-infile=0

          4. 修改 MySQL 的默認(rèn)端口

          設(shè)置端口變量用于監(jiān)聽 TCP/IP 連接的 MySQL 端口號(hào)。默認(rèn)端口號(hào)是 3306,但是您可以在 [mysqld] 中修改它。

          Port=5000

          5、啟用 MySQL 日志

          日志是了解服務(wù)運(yùn)行過程中發(fā)生了什么的最好的方法之一,在受到任何攻擊的時(shí)候都可以很容易的從日志里看到任何入侵相關(guān)的行為。可以通過將下邊的變量添加到配置文件[mysqld]部分來開啟mysql日志功能。

          log=/var/log/mysql.log

          6、設(shè)置合適的 MySQL 文件的訪問權(quán)限

          確保你已經(jīng)為所有的 mysql 服務(wù)文件和數(shù)據(jù)路徑設(shè)置了合適的訪問權(quán)限。文件 /etc/my.conf 只能由 root 用戶修改,這樣就可以阻止其他用戶修改數(shù)據(jù)庫(kù)服務(wù)的配置。

          # chmod 644 /etc/my.cnf

          7、刪除 MySQL shell 歷史

          你在 MySQL shell 中執(zhí)行的所有的命令都會(huì)被 mysql 客戶端保存到一個(gè)歷史文件:~/.mysql_history。這樣是很危險(xiǎn)的,因?yàn)閷?duì)于你創(chuàng)建過的任何用戶賬戶,所有的在 shell 輸入過的用戶名和密碼都會(huì)記錄到歷史文件里面。

          # cat /dev/null > ~/.mysql_history

          8. 不要在命令行中運(yùn)行 MySQL 命令

          正如你所知道的,你在終端上輸入的所有命令都會(huì)被存儲(chǔ)在一個(gè)歷史文件中,具體取決于你正在使用的shell(例如 bash 的 shell 歷史文件放在 ~/.bash_history)。攻擊者訪問這個(gè)歷史文件可以很容易地看到記錄在那里的任何密碼。

          非常不建議在命令行里面輸入密碼,如下:

          # mysql -u root -ppassword_

          img使用密碼連接 MySQL

          當(dāng)你查看命令行歷史文件的最后的部分時(shí),可以看到之前輸入過的密碼。

          # history

          img查看命令行輸入歷史

          推薦連接 MySQL 的方式是

          # mysql -u root -p
          Enter password:

          9. 定義特定應(yīng)用的數(shù)據(jù)庫(kù)用戶

          對(duì)于每一個(gè)在服務(wù)器上運(yùn)行的應(yīng)用,只設(shè)置一個(gè)與該應(yīng)用相關(guān)的數(shù)據(jù)庫(kù)用戶。例如你有一個(gè) wordpress 網(wǎng)站,如下創(chuàng)建一個(gè) wordpress 的數(shù)據(jù)庫(kù)用戶:

          # mysql -u root -p
          MariaDB [(none)]> CREATE DATABASE osclass_db;
          MariaDB [(none)]> CREATE USER 'osclassdmin'@'localhost' IDENTIFIED BY 'osclass@dmin%!2';
          MariaDB [(none)]> GRANT ALL PRIVILEGES ON osclass_db.* TO 'osclassdmin'@'localhost';
          MariaDB [(none)]> FLUSH PRIVILEGES;
          MariaDB [(none)]> exit

          并且要記住對(duì)于不再使用的數(shù)據(jù)庫(kù)用戶要?jiǎng)h掉。

          10. 使用額外的安全插件和庫(kù)

          MySQL 包含許多安全插件:驗(yàn)證客戶端連接到 MySQL 服務(wù)器的請(qǐng)求、密碼校驗(yàn)和敏感信息的安全存儲(chǔ)等,這些都在免費(fèi)版本中提供。

          在這里可查看更多:https://dev.mysql.com/doc/refman/5.7/en/security-plugins.html

          11. 定期修改 MySQL 密碼

          定期修改密碼是一個(gè)常見的信息/應(yīng)用/系統(tǒng)安全建議。多久修改一次密碼由你內(nèi)部的安全策略決定。定期修改密碼可以阻止長(zhǎng)期跟蹤你的“窺探者”,獲取你的密碼,登錄你的 MySQL 服務(wù)器。

          MariaDB [(none)]> USE mysql;MariaDB [(none)]> UPDATE user SET password=PASSWORD('YourPasswordHere') WHERE User='root' AND Host = 'localhost';MariaDB [(none)]> FLUSH PRIVILEGES;

          12. 定期更新 MySQL Server 包

          強(qiáng)烈建議定期從官方倉(cāng)庫(kù)更新 mysql/mariadb 包來獲取最新的安全更新和錯(cuò)誤改進(jìn)。通常情況下操作系統(tǒng)中默認(rèn)的包是過時(shí)的。

          # yum update
          # apt update

          在對(duì) mysql/mariadb server 進(jìn)行任何修改之后,要重啟服務(wù)。

          # systemctl restart mariadb		#RHEL/CentOS
          # systemctl restart mysql		#Debian/Ubuntu

          分享到此結(jié)束,歡迎大家在文章下面評(píng)論,并且和我們分享文章中沒有提到的安全提示。


          本文作者:soaring, 涼涼_
          原文鏈接:https://www.oschina.net/translate/mysql-mariadb-security-best-practices-for-linux
          版權(quán)歸作者所有,轉(zhuǎn)載請(qǐng)注明出處


          主站蜘蛛池模板: 制服中文字幕一区二区| 曰韩精品无码一区二区三区| 亚洲AV无码一区二区三区网址| 一区二区在线免费视频| 秋霞鲁丝片一区二区三区| 无码人妻精品一区二区三| 久久无码精品一区二区三区| 大伊香蕉精品一区视频在线| 精品国产一区二区22| 国产成人一区在线不卡| 精品久久久久一区二区三区| 综合久久一区二区三区 | 无码少妇一区二区浪潮免费| 亚洲AV成人一区二区三区在线看| 亚洲一区二区三区无码国产| 中文乱码人妻系列一区二区| 少妇一晚三次一区二区三区| 秋霞日韩一区二区三区在线观看| 日本v片免费一区二区三区| 无码AV动漫精品一区二区免费| 国产精品成人国产乱一区| 国产一区二区在线看| 人妻aⅴ无码一区二区三区| 一区二区三区精密机械| 国产乱码精品一区二区三区四川人 | 手机福利视频一区二区 | 99久久精品国产一区二区成人 | 极品人妻少妇一区二区三区| 亚洲色精品三区二区一区| 免费无码A片一区二三区| 国产亚洲综合一区二区三区 | 免费一区二区三区四区五区| 精品乱子伦一区二区三区高清免费播放| 久久国产午夜精品一区二区三区 | 无码人妻精品一区二区三区不卡 | 国产日韩精品一区二区三区 | 偷拍激情视频一区二区三区| 成人在线观看一区| 熟妇人妻系列av无码一区二区 | 国产一区二区三区韩国女主播| 国产精品一区二区久久乐下载|