1
0
mirror of https://github.com/ZSCNetSupportDept/website.git synced 2025-10-28 17:05:03 +08:00
Files
website/assets/js/cb565a11.e0fb259d.js
2025-07-28 19:10:46 +08:00

1 line
38 KiB
JavaScript

"use strict";(self.webpackChunkdeveloper_zsc=self.webpackChunkdeveloper_zsc||[]).push([[3785],{1812:e=>{e.exports=JSON.parse('{"permalink":"/blog/Web\u7684\u5386\u53f22\ufe0f\u20e3-\u52a8\u6001\u7f51\u9875","editUrl":"https://github.com/ZSCNetSupportDept/website/tree/master/blog/Web\u7684\u5386\u53f22\ufe0f\u20e3-\u52a8\u6001\u7f51\u9875.md","source":"@site/blog/Web\u7684\u5386\u53f22\ufe0f\u20e3-\u52a8\u6001\u7f51\u9875.md","title":"Web\u7684\u5386\u53f22\ufe0f\u20e3-\u52a8\u6001\u7f51\u9875","description":"\u4e0a\u7bc7\u6587\u7ae0\u6211\u4eec\u5df2\u7ecf\u4e86\u89e3\u4e86\u9759\u6001\u7f51\u9875\u662f\u5982\u4f55\u5de5\u4f5c\u7684\uff0c\u4f46\u662f\u8fd9\u6837\u7684\u7f51\u9875\u662f\u4e0d\u80fd\u6ee1\u8db3\u5927\u5bb6\u5bf9\u4e92\u8054\u7f51\u7684\u9700\u6c42\u7684\u3002\u4e3e\u4f8b\u5b50\u6765\u8bf4\uff1a\u4f60\u8bbf\u95eeb\u7ad9\u9996\u9875bilibili.com,\u6bcf\u6b21\u5237\u65b0\uff0c\u9996\u9875\u4e0a\u663e\u793a\u7ed9\u4f60\u7684\u89c6\u9891\u90fd\u4e0d\u4e00\u6837\uff0c\u4e0d\u540c\u7684\u4eba\u8bbf\u95ee\u8fd9\u4e2a\u9996\u9875\uff0c\u663e\u793a\u7684\u4e5f\u4e0d\u4e00\u6837\uff0c\u6309\u7406\u8bf4\u5927\u5bb6\u90fd\u662f\u8bbf\u95ee\u4e00\u4e2a\u7f51\u5740\uff0c\u80cc\u540e\u5e94\u8be5\u90fd\u662f\u540c\u4e00\u4e2a\u6587\u4ef6\uff0c\u4e3a\u4ec0\u4e48\u6bcf\u4e2a\u4eba\u90fd\u4e0d\u4e00\u6837\u5462\uff1f\u8fd9\u79cd\u529f\u80fd\u662f\u5982\u4f55\u5b9e\u73b0\u7684\uff1f","date":"2025-07-13T03:23:58.000Z","tags":[],"readingTime":22.115,"hasTruncateMarker":true,"authors":[],"frontMatter":{},"unlisted":false,"prevItem":{"title":"Web\u7684\u5386\u53f21\ufe0f\u20e3-HTTP","permalink":"/blog/Web\u7684\u5386\u53f21\ufe0f\u20e3-HTTP"},"nextItem":{"title":"Web\u7684\u5386\u53f23\ufe0f\u20e3-Web\u5e94\u7528","permalink":"/blog/Web\u7684\u5386\u53f23\ufe0f\u20e3-Web\u5e94\u7528"}}')},28453:(e,n,i)=>{i.d(n,{R:()=>l,x:()=>r});var s=i(96540);const c={},d=s.createContext(c);function l(e){const n=s.useContext(d);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function r(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(c):e.components||c:l(e.components),s.createElement(d.Provider,{value:n},e.children)}},41856:(e,n,i)=>{i.d(n,{A:()=>s});const s=i.p+"assets/images/model-view-controller-light-blue-b2e1bea6c4754589fec1ebf6f0e7d0d9.png"},51616:(e,n,i)=>{i.d(n,{A:()=>s});const s=i.p+"assets/images/web_application_with_html_and_steps-9fdd7ab763104f2162880839d3666966.png"},54220:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>h,contentTitle:()=>r,default:()=>p,frontMatter:()=>l,metadata:()=>s,toc:()=>t});var s=i(1812),c=i(74848),d=i(28453);const l={},r="Web\u7684\u5386\u53f22\ufe0f\u20e3-\u52a8\u6001\u7f51\u9875",h={authorsImageUrls:[]},t=[{value:"\u670d\u52a1\u5668\u7aef\u5185\u5d4c(SSI)",id:"\u670d\u52a1\u5668\u7aef\u5185\u5d4cssi",level:2},{value:"CGI",id:"cgi",level:2},{value:"\u5d4c\u5165\u5f0f\u811a\u672c",id:"\u5d4c\u5165\u5f0f\u811a\u672c",level:2},{value:"JSP",id:"jsp",level:3},{value:"PHP",id:"php",level:3},{value:"LAMP",id:"lamp",level:3},{value:"MVC\u67b6\u6784",id:"mvc\u67b6\u6784",level:2},{value:"\u865a\u62df\u8def\u7531",id:"\u865a\u62df\u8def\u7531",level:3},{value:"MVC\u6846\u67b6",id:"mvc\u6846\u67b6",level:3}];function o(e){const n={a:"a",admonition:"admonition",code:"code",h2:"h2",h3:"h3",img:"img",li:"li",mdxAdmonitionTitle:"mdxAdmonitionTitle",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,d.R)(),...e.components};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsxs)(n.p,{children:["\u4e0a\u7bc7\u6587\u7ae0\u6211\u4eec\u5df2\u7ecf\u4e86\u89e3\u4e86\u9759\u6001\u7f51\u9875\u662f\u5982\u4f55\u5de5\u4f5c\u7684\uff0c\u4f46\u662f\u8fd9\u6837\u7684\u7f51\u9875\u662f\u4e0d\u80fd\u6ee1\u8db3\u5927\u5bb6\u5bf9\u4e92\u8054\u7f51\u7684\u9700\u6c42\u7684\u3002\u4e3e\u4f8b\u5b50\u6765\u8bf4\uff1a\u4f60\u8bbf\u95eeb\u7ad9\u9996\u9875",(0,c.jsx)(n.code,{children:"bilibili.com"}),",\u6bcf\u6b21\u5237\u65b0\uff0c\u9996\u9875\u4e0a\u663e\u793a\u7ed9\u4f60\u7684\u89c6\u9891\u90fd\u4e0d\u4e00\u6837\uff0c\u4e0d\u540c\u7684\u4eba\u8bbf\u95ee\u8fd9\u4e2a\u9996\u9875\uff0c\u663e\u793a\u7684\u4e5f\u4e0d\u4e00\u6837\uff0c\u6309\u7406\u8bf4\u5927\u5bb6\u90fd\u662f\u8bbf\u95ee\u4e00\u4e2a\u7f51\u5740\uff0c\u80cc\u540e\u5e94\u8be5\u90fd\u662f\u540c\u4e00\u4e2a\u6587\u4ef6\uff0c\u4e3a\u4ec0\u4e48\u6bcf\u4e2a\u4eba\u90fd\u4e0d\u4e00\u6837\u5462\uff1f\u8fd9\u79cd\u529f\u80fd\u662f\u5982\u4f55\u5b9e\u73b0\u7684\uff1f"]}),"\n",(0,c.jsxs)(n.p,{children:["\u6dd8\u5b9d\u4e0a\u6709\u6570\u4e0d\u6e05\u7684\u5546\u54c1\u5728\u552e\u5356\uff0c\u5982\u679c\u6dd8\u5b9d\u4e3a\u6bcf\u4e00\u4e2a\u5546\u54c1\u90fd\u5728\u670d\u52a1\u5668\u76ee\u5f55\u4e0b\u9762\u521b\u5efa\u4e00\u4e2ahtml\u6587\u4ef6\uff0c\u597d\u8ba9\u5927\u5bb6\u901a\u8fc7\u8bbf\u95ee",(0,c.jsx)(n.code,{children:"http://taobao.com/someproduct.html"}),"\u6765\u67e5\u770b\u5546\u54c1\u4fe1\u606f\uff0c\u90a3\u8fd9\u4e2a\u5de5\u4f5c\u91cf\u5c31\u975e\u5e38\u5927\u4e86\u3002\u800c\u4e14\uff0c\u8fd9\u6837\u7684\u7f51\u9875\uff0c\u57fa\u672c\u4e0a\u6ca1\u6709\u4ea4\u4e92\u7684\u529f\u80fd\uff1a\u6211\u4eec\u5e0c\u671b\u7528\u6237\u53ef\u4ee5\u70b9\u51fb\u6309\u94ae\u5c31\u80fd\u8d2d\u4e70\u5546\u54c1\uff0c\u5546\u5bb6\u5728\u7f51\u9875\u540e\u53f0\u4e0a\u64cd\u4f5c\u5c31\u80fd\u4e0a\u4f20\u5546\u54c1\u3002\u8fd9\u79cd\u529f\u80fd\u5e94\u8be5\u5982\u4f55\u5b9e\u73b0\u5462\uff1f"]}),"\n",(0,c.jsx)(n.p,{children:"\u6682\u65f6\u5148\u4e0d\u8003\u8651\u8fd9\u4e9b\u9ad8\u7ea7\u7684\u95ee\u9898\uff0c\u8ba9\u6211\u4eec\u5148\u4ece\u6700\u57fa\u7840\u7684\u8bb2\u8d77\uff1a"}),"\n",(0,c.jsx)(n.h2,{id:"\u670d\u52a1\u5668\u7aef\u5185\u5d4cssi",children:"\u670d\u52a1\u5668\u7aef\u5185\u5d4c(SSI)"}),"\n",(0,c.jsx)(n.p,{children:"\u5982\u679c\u4f60\u60f3\u5411\u7f51\u7ad9\u4e2d\u63d2\u5165\u52a8\u6001\u5185\u5bb9\uff0cSSI\u662f\u6700\u7b80\u5355\uff0c\u6700\u76f4\u63a5\u7684\u529e\u6cd5\uff0c\u6bd4\u5982\u6211\u4eec\u7684wiki\u6709\u8bb8\u591a\u9875\u9762\uff0c\u4f46\u662f\u6bcf\u4e2a\u9875\u9762\u90fd\u6709\u4e00\u4e9b\u5171\u540c\u7684\u5143\u7d20\uff1a\u9875\u9762\u5934\u90e8\u7684\u5bfc\u822a\u680f\uff0c\u5de6\u4fa7\u7684\u5217\u8868\uff0c\u9875\u811a\u7b49\u3002\u5982\u679c\u4e3a\u6bcf\u4e2a\u9875\u9762\u90fd\u590d\u5236\u4e00\u4efd\u76f8\u540c\u7684HTML\u7684\u8bdd\uff0c\u90a3\u5c31\u592a\u9ebb\u70e6\u4e86\uff0c\u6709\u6ca1\u6709\u4ec0\u4e48\u529e\u6cd5\uff0c\u53ef\u4ee5\u4f7fHTML\u4e00\u6b21\u7f16\u5199\uff0c\u5230\u5904\u6e32\u67d3\u5462\uff1f"}),"\n",(0,c.jsxs)(n.p,{children:["SSI(Server Side Includes)\u5c31\u662f\u6ee1\u8db3\u8fd9\u79cd\u9700\u6c42\u7684\u4e00\u4e2aHTML\u5b8f\u8bed\u8a00\u3002\u5b83\u6709\u70b9\u7c7b\u4f3c\u4e8eC\u8bed\u8a00\u7684",(0,c.jsx)(n.code,{children:"# include"}),"\u5b8f\uff1a"]}),"\n",(0,c.jsx)(n.p,{children:"\u5047\u8bbe\u8fd9\u662f\u6211\u4eec\u9996\u9875\u7684HTML:"}),"\n",(0,c.jsx)(n.pre,{children:(0,c.jsx)(n.code,{className:"language-html",children:'<h1>wiki</h1>\n\x3c!--#include file="navbar.html" --\x3e\n<div class="article"></div>\n\n'})}),"\n",(0,c.jsxs)(n.p,{children:["\u5047\u5982",(0,c.jsx)(n.code,{children:"navbar.html"}),"\u7684\u5185\u5bb9\u5982\u4e0b\uff1a"]}),"\n",(0,c.jsx)(n.pre,{children:(0,c.jsx)(n.code,{className:"language-html",children:'\n<tr>\n<td>\u6559\u7a0b</td>\n<td>\u6587\u6863</td>\n<td>\u9ad8\u7ea7</td>\n<td><a href="github.com/zscnsd/website">Github</a></td>\n</tr>\n\n\n'})}),"\n",(0,c.jsx)(n.p,{children:"\u90a3\u4e48\u7528\u6237\u8bbf\u95ee\u6211\u4eec\u9996\u9875\u65f6\u5c31\u4f1a\u770b\u5230\uff1a"}),"\n",(0,c.jsx)(n.pre,{children:(0,c.jsx)(n.code,{className:"language-html",children:'\n<h1>wiki</h1>\n// highlight-start\n<tr>\n<td>\u6559\u7a0b</td>\n<td>\u6587\u6863</td>\n<td>\u9ad8\u7ea7</td>\n<td><a href="github.com/zscnsd/website">Github</a></td>\n</tr>\n// highlight-end\n<div class="article"></div>\n\n\n'})}),"\n",(0,c.jsxs)(n.p,{children:["\u5982\u679c\u5bfc\u822a\u680f\u7684\u754c\u9762\u6709\u53d8\u5316\uff0c\u90a3\u4e48\u53ea\u9700\u8981\u4fee\u6539",(0,c.jsx)(n.code,{children:"navbar.html"}),"\u5373\u53ef\uff0c\u4e0d\u7528\u4fee\u6539\u7f51\u7ad9\u4e2d\u7684\u6bcf\u4e00\u4e2a\u9875\u9762\u3002"]}),"\n",(0,c.jsx)(n.p,{children:"\u6ca1\u9519\uff0cSSI\u7684\u529f\u80fd\u5c31\u662f\u7b80\u5355\u5730\u628a\u5236\u5b9a\u7684\u5185\u5bb9\u63d2\u5165\u8fdbHTML\u91cc\u3002\u8fd9\u5bf9\u4e00\u4e9b\u91cd\u590d\u7684\u5143\u7d20(\u4f8b\u5982\u6bcf\u4e2a\u7f51\u9875\u7684\u9875\u5934\uff0c\u9875\u811a\uff0c\u4fa7\u8fb9\u680f)\u8fd8\u6709\u4e00\u4e9b\u9700\u8981\u66f4\u65b0\u7684\u5185\u5bb9\u5f88\u5b9e\u7528\u3002"}),"\n",(0,c.jsx)(n.p,{children:"\u5f53\u7136\uff0cSSI\u5e76\u6ca1\u6709\u89e3\u51b3\u52a8\u6001\u7f51\u9875\u7684\u95ee\u9898\uff0c\u5b83\u53ea\u662f\u628a\u9700\u8981\u624b\u52a8\u66f4\u65b0\u7684\u5730\u65b9\u5355\u72ec\u62ff\u4e86\u51fa\u6765\uff0c\u4f7f\u7ef4\u62a4\u9759\u6001\u7f51\u7ad9\u66f4\u5bb9\u6613\uff0c\u6240\u4ee5\u7a0b\u5e8f\u5458\u4eec\u53c8\u53d1\u660e\u4e86CGI\u6280\u672f\u3002"}),"\n",(0,c.jsx)(n.h2,{id:"cgi",children:"CGI"}),"\n",(0,c.jsxs)(n.p,{children:[(0,c.jsx)(n.strong,{children:"CGI(Common Gateway Interface)"})," \u662f\u7b2c\u4e00\u4e2a\u771f\u6b63\u5b9e\u73b0\u52a8\u6001\u7f51\u9875\u7684\u6280\u672f\uff0c\u5b83\u5141\u8bb8Web\u670d\u52a1\u5668\u6267\u884c\u5916\u90e8\u7a0b\u5e8f\u6765\u751f\u6210\u7f51\u9875\u5185\u5bb9\u3002"]}),"\n",(0,c.jsx)(n.p,{children:"CGI\u7684\u5de5\u4f5c\u539f\u7406\u662f\uff1a\u5f53\u7528\u6237\u8bbf\u95ee\u7279\u5b9aURL\u65f6\uff0c\u670d\u52a1\u5668\u4e0d\u662f\u8fd4\u56de\u9759\u6001\u6587\u4ef6\uff0c\u800c\u662f\u6267\u884c\u4e00\u4e2a\u7a0b\u5e8f\uff0c\u5e76\u5c06\u7a0b\u5e8f\u7684\u8f93\u51fa\u4f5c\u4e3aHTTP\u54cd\u5e94\u8fd4\u56de\u7ed9\u7528\u6237\u3002"}),"\n",(0,c.jsx)(n.p,{children:"(\u4e3e\u4e2a\u5929\u6c14\u9884\u62a5\u7684\u4f8b\u5b50)\uff1a"}),"\n",(0,c.jsxs)(n.p,{children:["Web\u670d\u52a1\u5668\u901a\u5e38\u4f1a\u628a\u80fd\u6267\u884c\u7684\u7a0b\u5e8f(\u9664\u5f00\u9759\u6001\u6587\u4ef6)\u653e\u5728\u4e00\u4e2a\u53ebcgi-bin\u7684\u7279\u6b8a\u76ee\u5f55\u91cc\u3002\u5047\u8bbe\u6211\u4eec\u670d\u52a1\u5668\u7684\u8fd9\u4e2a\u6587\u4ef6\u5939\u91cc\u6709\u4e00\u4e2a\u67e5\u8be2\u5929\u6c14\u7684Python\u7a0b\u5e8f",(0,c.jsx)(n.code,{children:"weather.py"}),",\u5f53\u7528\u6237\u8bbf\u95ee",(0,c.jsx)(n.code,{children:"http://example.org/cgi-bin/weather.py?city=\u4e2d\u5c71&date=2025-06-25"}),"\u65f6,\u6211\u4eec\u7684HTTP\u670d\u52a1\u7a0b\u5e8f\u4f1a\u81ea\u52a8",(0,c.jsx)(n.strong,{children:"\u6267\u884c"}),"\u653e\u5728\u8def\u5f84\u4e2d",(0,c.jsx)(n.code,{children:"/cgi-bin/weather.py"}),"\u7684\u8fd9\u4e2aPython\u811a\u672c\uff0c\u5e76\u4e14\u5c06\u5ba2\u6237\u7aef\u7684\u8bf7\u6c42\u5934\u548c\u8bf7\u6c42\u4f53\u4f20\u9012\u7ed9\u811a\u672c\uff1b"]}),"\n",(0,c.jsxs)(n.p,{children:["\u811a\u672c\u89e3\u6790\u8bf7\u6c42\u5934\u4e2d",(0,c.jsx)(n.code,{children:"city=\u4e2d\u5c71&date=2025-06-25"}),"\u8fd9\u4e2a\u53c2\u6570\uff0c\u5728\u6570\u636e\u5e93\u4e2d\u67e5\u8be2\u8fd9\u4e2a\u65e5\u671f\u7684\u5929\u6c14\uff0c\u7136\u540e\u8fd4\u56de\u4e00\u4e2aHTML\u7ed9HTTP\u670d\u52a1\u7a0b\u5e8f\uff0c\u518d\u628a\u8fd9\u4e2aHTML\u8fd4\u56de\u7ed9\u5ba2\u6237\u7aef\u3002"]}),"\n",(0,c.jsxs)(n.p,{children:["\u5982\u679c\u6ca1\u6709\u8bbe\u7f6eCGI,\u90a3\u4e48\u670d\u52a1\u7a0b\u5e8f\u53ea\u4f1a\u8fd4\u56de\u7ed9\u5ba2\u6237\u7aef",(0,c.jsx)(n.code,{children:"TodayWeather.py"}),"\u8fd9\u4e2a\u811a\u672c\u6587\u4ef6\u7684\u4ee3\u7801\u672c\u8eab\u3002"]}),"\n",(0,c.jsx)(n.p,{children:"\u5176\u5b9e\uff0cCGI\u662f\u4e00\u4e2a\u63a5\u53e3\u683c\u5f0f\uff0c\u5b83\u5b9a\u4e49\u4e86\u6211\u4eec\u7f16\u5199\u7a0b\u5e8f\u4e0eHTTP\u670d\u52a1\u7a0b\u5e8f\u4e4b\u95f4\u5982\u4f55\u4ea4\u4e92\u3002\u901a\u5e38\uff0cHTTP\u670d\u52a1\u7a0b\u5e8f\u7ed9CGI\u7a0b\u5e8f\u7684\u8f93\u5165\u5c31\u662f\u73af\u5883\u53d8\u91cf\uff0c\u8f93\u51fa\u5c31\u662f\u6807\u51c6\u8f93\u51fa\u3002"}),"\n",(0,c.jsx)(n.p,{children:"CGI\u7684\u5de7\u5999\u4e4b\u5904\u5728\u4e8e\uff0c\u670d\u52a1\u5668\u4e0d\u662f\u7528\u4ec0\u4e48\u590d\u6742\u7684\u65b9\u5f0f\u548c\u811a\u672c\u6c9f\u901a\uff0c\u800c\u662f\u628a\u8bf7\u6c42\u4fe1\u606f\uff08\u6bd4\u5982URL\u53c2\u6570\u91cc\u7684\u57ce\u5e02\uff09\u53d8\u6210\u7a0b\u5e8f\u5f88\u8f7b\u677e\u5c31\u80fd\u8bfb\u5230\u7684\u73af\u5883\u53d8\u91cf\u3002\u800c\u7a0b\u5e8f\u4e5f\u4e0d\u9700\u8981\u590d\u6742\u7684\u64cd\u4f5c\u8fdb\u884cIO\uff0c\u5b83\u53ea\u9700\u8981\u628a\u751f\u6210\u7684HTML\u4ee3\u7801\u6253\u5370\u51fa\u6765\uff0c\u670d\u52a1\u5668\u5c31\u4f1a\u81ea\u52a8\u6536\u96c6\u8fd9\u4e9b\u6253\u5370\u7684\u5185\u5bb9\uff0c\u7136\u540e\u53d1\u56de\u7ed9\u7528\u6237\u7684\u6d4f\u89c8\u5668\u3002"}),"\n",(0,c.jsx)(n.p,{children:"\u4e0b\u9762\u662f\u4e00\u4e2a\u4f8b\u5b50\uff1a"}),"\n",(0,c.jsx)(n.pre,{children:(0,c.jsx)(n.code,{className:"language-bash",metastring:'title="/var/www/cgi-bin/system-info.sh"',children:"\n#!/bin/bash\n\n# HTTP\u54cd\u5e94\u5934\necho \"Content-type: text/html\"\necho \"\"\n\n# HTML\u5185\u5bb9\necho '<html>'\necho '<head><title>\u7cfb\u7edf\u4fe1\u606f</title></head>'\necho '<body>'\necho '<h1>\u670d\u52a1\u5668\u7cfb\u7edf\u4fe1\u606f</h1>'\necho '<p>\u5f53\u524d\u65f6\u95f4\uff1a'$(date)'</p>'\necho '<p>\u5185\u5b58\u4f7f\u7528\u60c5\u51b5\uff1a</p>'\necho '<pre>'\nfree -h\necho '</pre>'\necho '</body>'\necho '</html>'\n\n"})}),"\n",(0,c.jsx)(n.p,{children:"\u6bcf\u6b21\u7528\u6237\u8bbf\u95ee\u8fd9\u4e2a\u9875\u9762\uff0c\u90fd\u4f1a\u770b\u5230\u5b9e\u65f6\u7684\u7cfb\u7edf\u4fe1\u606f\uff0c\u771f\u6b63\u5b9e\u73b0\u4e86\u52a8\u6001\u5185\u5bb9\u3002"}),"\n",(0,c.jsx)(n.p,{children:"\u867d\u7136CGI\u73b0\u5728\u5f88\u5c11\u89c1\u4e86\uff0c\u4f46\u5b83\u5efa\u7acb\u4e86\u4e00\u4e2a\u91cd\u8981\u6982\u5ff5\uff1a\u5c06URL\u8bf7\u6c42\u6620\u5c04\u5230\u7a0b\u5e8f\u51fd\u6570\uff0c\u800c\u4e0d\u662f\u9759\u6001\u6587\u4ef6\u3002\u8fd9\u4e2a\u601d\u60f3\u6210\u4e3a\u4e86\u73b0\u4ee3Web\u5f00\u53d1\u7684\u57fa\u7840\u3002"}),"\n",(0,c.jsx)(n.h2,{id:"\u5d4c\u5165\u5f0f\u811a\u672c",children:"\u5d4c\u5165\u5f0f\u811a\u672c"}),"\n",(0,c.jsx)(n.p,{children:"\u968f\u7740\u52a8\u6001\u7f51\u9875\u9700\u6c42\u7684\u589e\u957f\uff0c\u7eafCGI\u7f16\u7a0b\u53d8\u5f97\u590d\u6742\u3002\u7a0b\u5e8f\u5458\u4eec\u5e0c\u671b\u80fd\u591f\u5728HTML\u4e2d\u76f4\u63a5\u7f16\u7a0b\u52a8\u6001\u4ee3\u7801\uff0c\u8fd9\u6837\u65e2\u4fdd\u6301\u4e86HTML\u7684\u53ef\u8bfb\u6027\uff0c\u53c8\u80fd\u5b9e\u73b0\u52a8\u6001\u529f\u80fd\u3002"}),"\n",(0,c.jsx)(n.p,{children:"\u8fd9\u4e2a\u5c31\u662f\u5d4c\u5165\u5f0f\u811a\u672c\uff0c\u987e\u540d\u601d\u4e49\u5c31\u662f\u628a\u811a\u672c\u548cHTML\u6df7\u5728\u4e00\u8d77\uff0c\u5728HTML\u4e2d\u5d4c\u5165\u811a\u672c\uff1b"}),"\n",(0,c.jsx)(n.p,{children:"\u4f46\u662f\u8fd9\u79cd\u811a\u672c\u548c\u4eca\u5929\u7684\u524d\u7aefJavaScript\u4e0d\u540c\uff0c\u5b83\u662f\u7531\u540e\u7aef\u89e3\u91ca\u6267\u884c\u7684\uff0c\u5728\u8fd4\u56deHTML\u54cd\u5e94\u4e4b\u524d\uff0cHTTP\u670d\u52a1\u7a0b\u5e8f\u4f1a\u68c0\u67e5\u8fd9\u4e2aHTML\u91cc\u9762\u6709\u6ca1\u6709\u53ef\u4ee5\u6267\u884c\u7684\u811a\u672c\u5185\u5bb9\uff0c\u6709\u7684\u8bdd\u5c31\u6267\u884c\u8fd9\u4e9b\u811a\u672c\uff0c\u5e76\u4e14\u628a\u811a\u672c\u7684\u8f93\u51fa\u5d4c\u5165\u5230HTML\u91cc\u9762\u3002\u4efb\u4f55\u6709\u6548\u7684HTML\u4e5f\u662f\u6709\u6548\u7684\u8fd9\u7c7b\u811a\u672c\u8bed\u8a00\u3002"}),"\n",(0,c.jsx)(n.p,{children:"\u4eceCGI\u5230\u5d4c\u5165\u5f0f\u811a\u672c\u7684\u53e6\u5916\u4e00\u4e2a\u5173\u952e\u9a71\u52a8\u529b\u662f\u6027\u80fd\u3002CGI\u6bcf\u6765\u4e00\u4e2a\u8bf7\u6c42\uff0c\u670d\u52a1\u5668\u5c31\u5f97\u521b\u5efa\u4e00\u4e2a\u65b0\u8fdb\u7a0b\u53bb\u8fd0\u884cCGI\u7a0b\u5e8f\uff0c\u5b8c\u6210\u540e\u518d\u9500\u6bc1\uff0c\u5f00\u9500\u5f88\u5927\u3002\u800c\u5d4c\u5165\u5f0f\u811a\u672c\u901a\u5e38\u5219\u662f\u76f4\u63a5\u4f5c\u4e3a\u670d\u52a1\u5668\u7684\u4e00\u90e8\u5206\u8fd0\u884c\uff0c\u6548\u7387\u8fdc\u9ad8\u4e8eCGI\u3002"}),"\n",(0,c.jsx)(n.h3,{id:"jsp",children:"JSP"}),"\n",(0,c.jsxs)(n.p,{children:["\u4e3e\u4e2a\u4f8b\u5b50\u5427\uff0c\u4f60\u53ef\u4ee5\u8f7b\u677e\u4f7f\u7528Java\u6765\u521b\u5efa\u52a8\u6001\u7f51\u9875\uff0c\u53ea\u9700\u8981\u628aJava\u4ee3\u7801\u5d4c\u5165\u5230HTML\u91cc\u9762\uff0c\u4f7f\u7528",(0,c.jsx)(n.code,{children:"<% %>"}),"\u5305\u88f9\u4f4f\u4ee3\u7801\uff1a"]}),"\n",(0,c.jsx)(n.pre,{children:(0,c.jsx)(n.code,{className:"language-java",children:"\n<html>\n<body>\n <p>\u5f53\u524d\u65f6\u95f4\uff1a<%= new java.util.Date() %></p>\n</body>\n</html>\n\n\n"})}),"\n",(0,c.jsx)(n.p,{children:"\u590d\u6742\u4e00\u70b9\u7684\u4f8b\u5b50\uff1a"}),"\n",(0,c.jsx)(n.pre,{children:(0,c.jsx)(n.code,{className:"language-java",children:'\n<html>\n<body>\n <h1>\u6b22\u8fce\u8bbf\u95ee\u6211\u4eec\u7684\u7f51\u7ad9</h1>\n <p>\u5f53\u524d\u670d\u52a1\u5668\u65f6\u95f4\uff1a<%= new java.util.Date() %></p>\n <p>\u60a8\u662f\u7b2c <%= session.getAttribute("visitCount") %> \u4f4d\u8bbf\u5ba2</p>\n \n <%-- \u8fd9\u662fJSP\u6ce8\u91ca\uff0c\u4e0d\u4f1a\u51fa\u73b0\u5728\u6700\u7ec8HTML\u4e2d --%>\n <% \n // \u8fd9\u91cc\u53ef\u4ee5\u5199\u590d\u6742\u7684Java\u903b\u8f91\n String userName = request.getParameter("user");\n if (userName != null) {\n out.println("<p>\u6b22\u8fce\u60a8\uff0c" + userName + "\uff01</p>");\n }\n %>\n</body>\n</html>\n\n'})}),"\n",(0,c.jsx)(n.admonition,{title:"session\u548ccookie",type:"info",children:(0,c.jsxs)(n.p,{children:["\u5728\u8fd9\u6bb5JSP\u4ee3\u7801\u4e2d\u6709\u4e00\u4e2a\u5bf9\u8c61\u53eb\u505a",(0,c.jsx)(n.code,{children:"session"}),"\uff0c\u8fd9\u662f\u4ec0\u4e48\u5462\uff1f\u5b9e\u9645\u4e0a\uff0c\u56e0\u4e3aHTTP\u662f\u65e0\u72b6\u6001\u7684\u534f\u8bae\uff0c\u610f\u5473\u7740\u4e24\u6b21\u8bf7\u6c42\u4e4b\u95f4\u662f\u5b8c\u5168\u72ec\u7acb\u7684\uff0c\u4e00\u6b21\u8bf7\u6c42\u4e0d\u5e94\u8be5\u4f9d\u8d56\u53e6\u4e00\u6b21\u8bf7\u6c42\u3002\u8fd9\u663e\u5f97\u6709\u70b9\u4e0d\u7075\u6d3b\uff0c\u4e8e\u662f\u4eba\u4eec\u4f1a\u5728HTTP\u7684\u8bf7\u6c42\u4f53\u4e0a\u5939\u5e26\u4e00\u4e9b\u989d\u5916\u7684\u53c2\u6570\uff0c\u7528\u4e8e\u8868\u660e\u7528\u6237\u7684\u8eab\u4efd\u4fe1\u606f\uff0c\u6bd4\u5982\u5728\u7528\u6237\u767b\u5f55\u7f51\u7ad9\u4e4b\u540e\uff0c\u670d\u52a1\u5668\u4f1a\u7ed9\u5ba2\u6237\u7aef\u4e00\u4e2a\u5bc6\u94a5\uff0c\u4e0b\u4e00\u6b21\u5ba2\u6237\u7aef\u8bf7\u6c42\u9875\u9762\u65f6\u5e26\u4e0a\u8fd9\u4e2a\u5bc6\u94a5\uff0c\u670d\u52a1\u5668\u5c31\u77e5\u9053\u8fd9\u662f\u67d0\u4e2a\u7528\u6237\u7684\u8bf7\u6c42\u3002\u5728\u8fd9\u79cd\u6a21\u5f0f\u4e0b\uff0c\u670d\u52a1\u5668\u9700\u8981\u4e3a\u6bcf\u4e2a\u7528\u6237\u7ef4\u62a4\u4fe1\u606f\uff0c\u6bd4\u5982\u6700\u7b80\u5355\u5730\u9700\u8981\u7ef4\u62a4\u5bc6\u94a5\u662f\u5bf9\u5e94\u54ea\u4e2a\u7528\u6237\u7684\uff0c\u8fd9\u4e9b\u4fe1\u606f\u5c31\u53eb\u505asession\u3002"]})}),"\n",(0,c.jsx)(n.p,{children:"\u7c7b\u4f3c\u4e8e\u8fd9\u6837\u7684\u811a\u672c\u53eb\u505aJSP(JavaServer Pages),\u5b83\u5728\u540e\u7aef\u8fd4\u56de\u65f6\u88ab\u8f6c\u6362\u6210Java Servlet\u4ee3\u7801\u6765\u6267\u884c\uff0c\u672c\u8d28\u4e0a\uff0cJSP\u662fJava Servlet\u7684\u4e00\u79cd\u8bed\u6cd5\u7cd6\u3002\u81f3\u4e8eJSP\u548cJava Servlet\u90fd\u662f\u4ec0\u4e48\uff0c\u81ea\u884c\u4e86\u89e3\u5427\u3002"}),"\n",(0,c.jsx)(n.h3,{id:"php",children:"PHP"}),"\n",(0,c.jsxs)(n.p,{children:["\u6bd4JSP\u66f4\u7075\u6d3b\u7684\u5c31\u662fPHP,PHP\u5c31\u662f\u4e00\u95e8\u7eaf\u6b63\u7684\u811a\u672c\u8bed\u8a00\u4e86\uff0c\u5b83\u7684\u7528\u6cd5\u4e0eJSP\u7c7b\u4f3c,\u4f7f\u7528",(0,c.jsx)(n.code,{children:"<?php ?>\u5305\u88f9\u4ee3\u7801"}),"\uff1a"]}),"\n",(0,c.jsx)(n.pre,{children:(0,c.jsx)(n.code,{className:"language-php",children:"\n<html>\n<body>\n <h1>\u6b22\u8fce\u6765\u5230\u6211\u7684\u7f51\u7ad9</h1>\n <?php\n $time = date('Y-m-d H:i:s');\n echo \"<p>\u5f53\u524d\u65f6\u95f4\uff1a$time</p>\";\n ?>\n</body>\n</html>\n\n"})}),"\n",(0,c.jsx)(n.p,{children:"\u4e5f\u53ef\u4ee5\u8fd9\u6837\u5199\uff0c\u8fd9\u6837\u5c31\u7c7b\u4f3c\u4e8eCGI\u7a0b\u5e8f\u7684\u5199\u6cd5\u4e86\uff1a"}),"\n",(0,c.jsx)(n.pre,{children:(0,c.jsx)(n.code,{className:"language-php",children:'\n<?php\necho "<html><body>";\necho "<h1>\u6b22\u8fce\u6765\u5230\u6211\u7684\u7f51\u7ad9</h1>";\n$time = date(\'Y-m-d H:i:s\');\necho "<p>\u5f53\u524d\u65f6\u95f4\uff1a$time</p>";\necho "</body></html>";\n?>\n\n'})}),"\n",(0,c.jsx)(n.h3,{id:"lamp",children:"LAMP"}),"\n",(0,c.jsx)(n.p,{children:'\u8fd9\u79cd\u52a8\u6001\u7f51\u9875\u7684\u7f16\u5199\u65b9\u6cd5\u6d41\u884c\u4e86\u5f88\u591a\u5e74\uff0c\u5f62\u6210\u4e86\u4e00\u4e2a\u53eb\u505a"LAMP"\u7684\u5957\u8def\uff1aLinux+Apache+MySQL+PHP;\u5c31\u662f\u5c06\u7535\u8111\u88c5\u4e0aLinux\u7cfb\u7edf\uff0c\u8fd0\u884cApache\u8fd9\u4e2aHTTP\u670d\u52a1\u7aef\uff0c\u4f7f\u7528PHP\u4f5c\u4e3a\u52a8\u6001\u811a\u672c\u8bed\u8a00,\u4f7f\u7528MySQL\u6765\u5b58\u50a8\u548c\u8bbf\u95ee\u4e1a\u52a1\u6570\u636e\u3002'}),"\n",(0,c.jsx)(n.p,{children:'\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0c\u8fd9\u56db\u4e2a\u90fd\u662f\u5f00\u6e90\u514d\u8d39\u7684\u8f6f\u4ef6\uff0cLAMP\u7684\u5174\u8d77\uff0c\u662f\u5f00\u6e90\u8f6f\u4ef6\u8fd0\u52a8\u7684\u6807\u5fd7\u4e4b\u4e00\u3002\u5f00\u6e90\u8f6f\u4ef6\u4f7f\u5f97\u90e8\u7f72\u7f51\u7ad9\u7684\u6210\u672c\u6781\u5927\u5730\u964d\u4f4e\uff0c\u63a8\u52a8\u4e86\u4e92\u8054\u7f51\u7684\u7e41\u8363\u3002\u5982\u679c\u4f60\u60f3\u5efa\u7ad9\uff0c\u90a3\u65f6\u5019\u4e92\u8054\u7f51\u4e0a\u5230\u5904\u90fd\u662f"LAMP\u4e00\u952e\u5b89\u88c5\u811a\u672c"\u4e4b\u7c7b\u7684\u4e1c\u897f\uff0c\u73b0\u5728\u4e5f\u80fd\u641c\u5230\u4e0d\u5c11\u3002\u4e00\u4e2a\u4e0b\u5348\u5c31\u80fd\u4e0a\u7ebf\u4e00\u4e2a\u5b8c\u5907\u7684\u7f51\u7ad9\u3002\u8fd9\u4e9b\u6280\u672f\u7684\u51fa\u73b0\uff0c\u4f7f\u5f97\u5f00\u7f51\u7ad9\u4e0d\u518d\u5c40\u9650\u4e8e\u5927\u4f01\u4e1a\u624d\u80fd\u529e\u5f97\u5230\u7684\u4e8b\u60c5\uff0c\u4e00\u65f6\u95f4\u4e92\u8054\u7f51\u4e0a\u5230\u5904\u90fd\u662f\u4e2a\u4eba\u6216\u8005\u5c0f\u5355\u4f4d\u7684\u7f51\u7ad9\uff0c\u751a\u81f3\u540e\u6765\u51fa\u73b0\u4e86\u8bf8\u5982Wordpress\u4e4b\u7c7b\u7684\u65b9\u6848\uff0c\u4e0d\u4f1a\u5199\u4ee3\u7801\u4e5f\u80fd\u5f00\u7f51\u7ad9\u3002\u7e41\u8363\u7684\u751f\u6001\uff0c\u7f51\u9875\u4e0a\u4e30\u5bcc\u7684\u52a8\u6001\u5185\u5bb9\uff0c\u5f62\u6210\u4e86\u88ab\u6211\u4eec\u79f0\u4e3a\u201cWeb 2.0\u201d\u7684\u65f6\u4ee3\u3002'}),"\n",(0,c.jsx)(n.p,{children:"LAMP\u7684\u4e00\u4e2a\u5178\u578b\u53cd\u9762\u662f\u5fae\u8f6f\u5168\u5bb6\u6876\uff1aWindows Server+IIS+SQL Server+ASP\uff0c\u8fd9\u5957\u6280\u672f\u65b9\u6848\u9700\u8981\u7ed9\u5fae\u8f6f\u7f34\u7eb3\u9ad8\u989d\u7684\u6388\u6743\u8d39\u7528\uff0c\u5728\u5f53\u65f6\u57fa\u672c\u4e0a\u53ea\u9650\u4e8e\u8ffd\u6c42\u7a33\u5b9a\u548c\u552e\u540e\u670d\u52a1\u7684\u4f01\u4e1a\u4f7f\u7528\u3002\u6211\u4eec\u7684\u6587\u7ae0\u4e5f\u6ca1\u6709\u600e\u4e48\u4ecb\u7ecd\u8fd9\u4e9b\u6280\u672f\u3002\u4e0d\u8fc7IIS\u5bf9\u4e8e\u4e2a\u4eba\u7528\u81ea\u5df1\u7684\u7535\u8111\u5efa\u7ad9\u8fd8\u662f\u975e\u5e38\u65b9\u4fbf\u7684\u3002(\u5f53\u7136\u56fd\u5185\u6ca1\u6709\u516c\u7f51IP\u90a3\u662f\u53e6\u4e00\u56de\u4e8b\u4e86\u256e(\uffe3\u25bd\uffe3)\u256d)"}),"\n",(0,c.jsx)(n.h2,{id:"mvc\u67b6\u6784",children:"MVC\u67b6\u6784"}),"\n",(0,c.jsx)(n.p,{children:"\u968f\u7740\u7f51\u9875\u7684\u4e0d\u65ad\u53d1\u5c55\uff0c\u51fa\u73b0\u4e86\u590d\u6742\u7684\u4e1a\u52a1\u903b\u8f91\uff0c\u5e76\u4e14\u9875\u9762\u4e5f\u8d8a\u6765\u8d8a\u590d\u6742\uff1b\u8fd9\u65f6\u5019\uff0c\u628a\u9875\u9762\u548c\u7a0b\u5e8f\u903b\u8f91\u6df7\u5728\u4e00\u8d77\u7684\u5d4c\u5165\u5f0f\u811a\u672c\u5728\u5e9e\u5927\u7684\u590d\u6742\u4ee3\u7801\u60c5\u51b5\u4e0b\u53d8\u5f97\u96be\u4ee5\u7ef4\u62a4\u3002"}),"\n",(0,c.jsxs)(n.p,{children:["\u800c\u4e14\u5b83\u4eec\u90fd\u6709\u4e00\u4e2a\u7279\u70b9\uff1a\u4f9d\u8d56\u4e8e\u5177\u4f53\u7684\u67d0\u4e2aHTTP\u670d\u52a1\u7a0b\u5e8f\uff0cPHP\u4f9d\u8d56\u4e8eApache\u7684",(0,c.jsx)(n.code,{children:"mod_php"}),"\u6216Nginx\u7684FastCGI\u652f\u6301\uff0cJSP\u4f9d\u8d56\u4e8eServlet\u5bb9\u5668\u4f8b\u5982Tomcat,\u8fd9\u589e\u52a0\u4e86\u5f00\u53d1\u4e0e\u90e8\u7f72\u7684\u8026\u5408\u5ea6\uff0c\u66f4\u4f7f\u5f97\u9879\u76ee\u96be\u4ee5\u7ba1\u7406\u3002\u5d4c\u5165\u5f0f\u811a\u672c\u96be\u4ee5\u590d\u7528\u5df2\u6709\u7684\u4ee3\u7801\uff0c\u8fd9\u4e9b\u4ee3\u7801\u7684\u6d4b\u8bd5\u4e5f\u9700\u8981\u6a21\u62dfHTTP\u73af\u5883\uff0c\u96be\u4ee5\u6d4b\u8bd5\u3002"]}),"\n",(0,c.jsx)(n.p,{children:"\u6b64\u65f6\u5174\u8d77\u4e86\u4e00\u79cd\u65b0\u7684Web\u540e\u7aef\u7f16\u7a0b\u601d\u60f3\uff0c\u5b83\u5c31\u662fMVC(Model-View-Controller)"}),"\n",(0,c.jsx)(n.p,{children:"\u7b80\u5355\u6765\u8bf4\uff0c\u6839\u636e\u5927\u91cf\u7684\u5f00\u53d1\u7ecf\u9a8c\u7d2f\u79ef\uff0c\u4eba\u4eec\u53d1\u73b0\u4e00\u4e2a\u52a8\u6001\u7f51\u9875\u7684\u540e\u7aef\u901a\u5e38\u9700\u8981\u505a\u5230\u8fd93\u4ef6\u4e8b\u60c5\uff1a"}),"\n",(0,c.jsxs)(n.ul,{children:["\n",(0,c.jsx)(n.li,{children:"Model:\u4f7f\u7528\u9762\u5411\u5bf9\u8c61\u7684\u65b9\u6cd5\u4e3a\u4e1a\u52a1\u5efa\u6a21\uff0c\u628a\u6570\u636e\u5bf9\u5e94\u5230\u7f16\u7a0b\u8bed\u8a00\u4e2d\u7684\u5bf9\u8c61\uff0c\u628a\u5bf9\u6570\u636e\u7684\u64cd\u4f5c\u5bf9\u5e94\u5230\u5bf9\u8c61\u7684\u65b9\u6cd5\u3002\u8d1f\u8d23\u5bf9\u4e1a\u52a1\u6570\u636e\u8fdb\u884c\u5b9e\u9645\u7684\u64cd\u4f5c\u3002"}),"\n",(0,c.jsx)(n.li,{children:"View\uff1a\u8f93\u5165\u6570\u636e\uff0c\u8d1f\u8d23\u628a\u6570\u636e\u53d8\u6210\u7528\u6237\u53ef\u4ee5\u76f4\u89c2\u770b\u61c2\u7684HTML\u3002"}),"\n",(0,c.jsx)(n.li,{children:"Controller\uff1a\u8d1f\u8d23\u534f\u8c03\uff0c\u8c03\u7528\u4e0a\u9762\u4e24\u4e2a\u90e8\u5206\u3002"}),"\n"]}),"\n",(0,c.jsx)(n.p,{children:(0,c.jsx)(n.img,{alt:"MVC",src:i(41856).A+"",width:"2000",height:"1500"})}),"\n",(0,c.jsxs)(n.p,{children:["\u4f8b\u5982\uff0c\u5f53\u6211\u4eec\u5728\u62a5\u4fee\u7cfb\u7edf\u4e2d\u60f3\u8981\u67e5\u8be2\u4e00\u4e2a\u7247\u533a\u7684\u5168\u90e8\u62a5\u4fee\u65f6\uff0c\u9996\u5148\u6211\u4eec\u8bbf\u95ee",(0,c.jsx)(n.code,{children:"http://wwbx.zsxyww.com/QueryTickets.php?zone=\u671d\u6656&status=pending"})]}),"\n",(0,c.jsxs)(n.p,{children:["\u7136\u540e\u670d\u52a1\u5668\u6839\u76ee\u5f55\u4e0b\u7684",(0,c.jsx)(n.code,{children:"QueryTickets.php"}),"\u7a0b\u5e8f\u5c31\u4f1a\u63a5\u53d7\u5230\u6211\u4eec\u7684\u8bf7\u6c42(\u5728MVC\u65f6\u671f\u7684PHP\u7a0b\u5e8f\u5df2\u7ecf\u4e0d\u50cf\u5d4c\u5165\u5f0f\u811a\u672c\u90a3\u65f6\u6df7\u5199HTML\u548cPHP,\u6574\u4e2a\u6587\u4ef6\u5c31\u662f\u4ee5",(0,c.jsx)(n.code,{children:"<?php"}),"\u5f00\u5934\u7684\u4e00\u6574\u4e2a\u811a\u672c\uff0c\u6ca1\u6709HTML)"]}),"\n",(0,c.jsxs)(n.p,{children:[(0,c.jsx)(n.code,{children:"QueryTickets.php"}),"\u811a\u672c\u5c31\u662fMVC\u4e2d\u7684Controller,\u811a\u672c\u89e3\u6790\u5230\u6211\u4eec\u60f3\u5bfb\u627e\u671d\u6656\u7247\u533a\u6240\u6709\u5f85\u89e3\u51b3\u7684\u62a5\u4fee\uff0c\u4e8e\u662f\u5b83\u8c03\u7528\u4e00\u4e2a\u51fd\u6570",(0,c.jsx)(n.code,{children:"Ticket.Query()"}),"\uff0c\u4f46\u662fController\u77e5\u9053\u671d\u6656\u7247\u533a\u5728\u6570\u636e\u5e93\u5bf9\u5e94\u7684\u7f16\u53f7\u662f10,\u5f85\u89e3\u51b3\u72b6\u6001\u7684\u7f16\u53f7\u662f0\uff0c\u4e8e\u662f\u4ed6\u628aURI\u53c2\u6570\u4e2d\u7684",(0,c.jsx)(n.code,{children:"\u671d\u6656"}),"\u548c",(0,c.jsx)(n.code,{children:"pending"}),"\u6539\u6210",(0,c.jsx)(n.code,{children:"10"}),"\u548c",(0,c.jsx)(n.code,{children:"0"}),"\u4f20\u9012\u7ed9\u51fd\u6570\uff1b"]}),"\n",(0,c.jsxs)(n.p,{children:["\u8fd9\u4e2a\u51fd\u6570\u4f1a\u53bb\u6570\u636e\u5e93\uff08\u6bd4\u5982\u524d\u9762\u63d0\u5230\u7684MySQL\uff09\u91cc\u67e5\u8be2\u6570\u636e\uff0c\u6700\u7ec8\u6267\u884c\u7c7b\u4f3c\u4e8e",(0,c.jsx)(n.code,{children:"SELECT * FROM tickets WHERE zone=10 AND status=0;"}),"\u8fd9\u6837\u7684SQL\u8bed\u53e5\uff0c\u7136\u540e\u628a\u67e5\u8be2\u7684\u6bcf\u4e00\u884c\u90fd\u5bf9\u5e94\u4e00\u4e2aTicket\u5bf9\u8c61\uff0c\u8fd4\u56de\u4e00\u4e2aTicket\u7684\u6570\u7ec4\u3002\u8fd9\u4e2a\u51fd\u6570\uff0c\u4ee5\u53caTicket\u7c7b\u7684\u5b9a\u4e49\u5c31\u662fModel\u8d1f\u8d23\u7684\u90e8\u5206\u3002"]}),"\n",(0,c.jsxs)(n.admonition,{type:"info",children:[(0,c.jsx)(n.mdxAdmonitionTitle,{}),(0,c.jsx)(n.p,{children:"SQL(Structured Query Language)\u662f\u8fdb\u884c\u6570\u636e\u5e93\u64cd\u4f5c\u7684\u6807\u51c6\u9014\u5f84\uff0c\u4f60\u53ef\u4ee5\u7b80\u5355\u5730\u628a\u6570\u636e\u5e93\u7406\u89e3\u6210\u6709\u66f4\u591a\u529f\u80fd\u548c\u6027\u80fd\u66f4\u9ad8\u7684Excel\u8868\u683c\uff0c\u5373\u4f7f\u8fd9\u4e2a\u8868\u683c\u6709\u4e0a\u4ebf\u884c\uff0c\u6570\u636e\u5e93\u4e5f\u80fd\u5728\u4e0d\u5230\u51e0\u79d2\u5185\u7cbe\u51c6\u6267\u884c\u590d\u6742\u7684\u6570\u636e\u8bfb\u53d6\u6216\u5199\u5165\u3002"}),(0,c.jsx)(n.p,{children:"\u521a\u624d\u7684\u90a3\u4e2aSQL\u8bed\u53e5\uff0c\u5c31\u662f\u8ba9\u6570\u636e\u5e93\u627e\u5230\u6240\u6709\u572810\u53f7\u7247\u533a(\u671d\u6656)\u672a\u89e3\u51b3\u7684\u5de5\u5355\uff0c\u7ed9\u51fa\u8fd9\u4e9b\u5de5\u5355\u7684\u6240\u6709\u4fe1\u606f\u3002\u662f\u4e0d\u662f\u975e\u5e38\u76f4\u89c2\u65b9\u4fbf\uff1f"}),(0,c.jsx)(n.p,{children:'\u6570\u636e\u5e93\u5f80\u5f80\u662f\u540e\u7aef\u7684\u6838\u5fc3\u3002\u8bb8\u591a\u540e\u7aef\u7cfb\u7edf\uff0c\u53ef\u4ee5\u8bf4\u5c31\u662fSQL\u6570\u636e\u5e93\u7684\u5957\u58f3\uff0c\u5b83\u4eec\u7684\u4e1a\u52a1\u903b\u8f91\u4e0d\u4f1a\u8d85\u8fc7"CRUD"\uff0c\u8fd9\u4e5f\u662f\u4e3a\u4ec0\u4e48\u4f8b\u5982Supabase\u4e4b\u7c7b\u7684\u4ea7\u54c1\u80fd\u591f\u5982\u6b64\u7684\u6d41\u884c\u3002'})]}),"\n",(0,c.jsx)(n.p,{children:"Model\u662f\u7a0b\u5e8f\u7684\u6838\u5fc3\u3002\u5b83\u4e0d\u5173\u5fc3\u9875\u9762\u957f\u4ec0\u4e48\u6837\uff0c\u53ea\u8d1f\u8d23\u5904\u7406\u548c\u4e1a\u52a1\u76f8\u5173\u7684\u6570\u636e\u3002\u5728\u6211\u4eec\u62a5\u4fee\u7cfb\u7edf\u7684\u4f8b\u5b50\u91cc\uff0c\u5b83\u5b9a\u4e49\u4e86\u4e00\u5f20\u62a5\u4fee\u5355\u5e94\u8be5\u5305\u542b\u54ea\u4e9b\u4fe1\u606f\uff08\u5982ID\u3001\u5730\u70b9\u3001\u72b6\u6001\uff09\uff0c\u5e76\u63d0\u4f9b\u4e86\u64cd\u4f5c\u8fd9\u4e9b\u6570\u636e\u7684\u65b9\u6cd5\uff08\u5982\u4ece\u6570\u636e\u5e93\u67e5\u8be2\u62a5\u4fee\u5355\u3001\u66f4\u65b0\u62a5\u4fee\u5355\u72b6\u6001\u7b49\uff09\u3002\u8fd9\u662f\u7f51\u7ad9\u4e1a\u52a1\u903b\u8f91\u7684\u4f53\u73b0\u3002"}),"\n",(0,c.jsxs)(n.p,{children:["\u5f53Controller\u83b7\u5f97Model\u8fd4\u56de\u7684\u6570\u636e\u65f6\uff0c\u5b83\u5c31\u628a\u8fd9\u4e9b\u6570\u636e\u79fb\u4ea4View\u51fd\u6570\u6e32\u67d3\uff0c\u8c03\u7528View\u51fd\u6570\u3002View\u9996\u5148\u628aTicket\u5bf9\u8c61\u91cc\u9762\u7684",(0,c.jsx)(n.code,{children:"10"}),"\u548c",(0,c.jsx)(n.code,{children:"0"}),"\u6539\u6210",(0,c.jsx)(n.code,{children:"\u671d\u6656"}),"\u548c",(0,c.jsx)(n.code,{children:"\u5f85\u89e3\u51b3"}),"\uff0c\u7136\u540e\u68c0\u67e5\u5ba2\u6237\u7aef\u7684UA,\u5982\u679c\u662f\u7535\u8111\u7684\u8bdd\u5c31\u5728\u4e00\u884c\u663e\u793a\u66f4\u591a\u6570\u636e\uff0c\u5982\u679c\u662f\u624b\u673a\u7684\u8bdd\u5c31\u8fd4\u56de\u7d27\u51d1\u7684\u754c\u9762\u3002\u6839\u636e\u4e0d\u540c\u7684\u8bbf\u95ee\u8bbe\u5907\uff0c\u9884\u5148\u5728\u7cfb\u7edf\u4e2d\u5b58\u653e\u4e86\u4e00\u4e9b\u6a21\u677fHTML\u6587\u4ef6\uff0cview\u8bfb\u53d6\u8fd9\u4e9b\u6587\u4ef6\uff0c\u7136\u540e\u5c06\u6570\u636e\u653e\u5230\u91cc\u9762\uff0c\u8fd4\u56de\u7ed9\u7528\u6237\uff1b"]}),"\n",(0,c.jsxs)(n.p,{children:["\u8fd9\u6837\u7528\u6237\u8bbf\u95ee",(0,c.jsx)(n.code,{children:"QueryTickets.php"}),"\u65f6\uff0c\u5c31\u4f1a\u770b\u5230\u4e00\u4e2a\u6839\u636e\u540e\u53f0\u6570\u636e\u5b9e\u65f6\u66f4\u65b0\u7684\u4e00\u4e2a\u9875\u9762\u3002\u8fd9\u5c31\u662f\u4e00\u4e2a\u7b80\u5355\u7684MVC\u67b6\u6784\u9875\u9762\u7684\u4f8b\u5b50\u3002"]}),"\n",(0,c.jsx)(n.admonition,{title:"\u63d0\u793a",type:"tip",children:(0,c.jsx)(n.p,{children:"\u54c8\u54c8\uff0c\u8fd9\u4e2a\u4f8b\u5b50\u5176\u5b9e\u662f\u9a97\u4f60\u7684\uff0c\u6211\u4eec\u7684\u62a5\u4fee\u7cfb\u7edf\u65e2\u4e0d\u662f\u7528\u7684PHP,\u4e5f\u4e0d\u662f\u7528\u7684MVC\u67b6\u6784\uff0c\u751a\u81f3\u8def\u7531\u90fd\u662f\u865a\u62df\u7684\u3002\u8fd9\u4e2a\u4f8b\u5b50\u53ea\u662f\u8ba9\u4f60\u6bd4\u8f83\u597d\u61c2\uff5e"})}),"\n",(0,c.jsx)(n.h3,{id:"\u865a\u62df\u8def\u7531",children:"\u865a\u62df\u8def\u7531"}),"\n",(0,c.jsxs)(n.p,{children:["\u5b9e\u9645\u4e0a\uff0c\u7a0b\u5e8f\u5458\u4eec\u8ba4\u4e3a\u57fa\u4e8e\u4f20\u7edf\u670d\u52a1\u5668\u6587\u4ef6\u7684\u8def\u7531\u67b6\u6784\u4e25\u91cd\u963b\u788d\u4e86\u540e\u7aef\u7cfb\u7edf\u7684\u7075\u6d3b\u8bbe\u8ba1\u3002\u4e5f\u5c31\u662f\u8bf4\uff0c\u7528\u6237\u8f93\u5165\u7684URI,\u5fc5\u987b\u5bf9\u5e94\u6839\u76ee\u5f55\u91cc\u9762\u4e00\u4e2a\u5b9e\u9645\u5b58\u5728\u7684\u6587\u4ef6\uff0c\u6bd4\u5982\u4e0a\u9762\u7684",(0,c.jsx)(n.code,{children:"QueryTickets.php"}),"\uff0c\u5728\u540e\u7aef\u5c31\u662f\u4e00\u4e2a\u5b9e\u9645\u5b58\u5728\u7684\u811a\u672c\u3002\u7531HTTP\u7a0b\u5e8f\u8d1f\u8d23\u8c03\u7528\u8fd9\u4e2a\u811a\u672c\uff0c\u5e76\u4e14\u628a\u811a\u672c\u7684\u8f93\u51fa\u53d1\u9001\u8fc7\u53bb\u3002"]}),"\n",(0,c.jsx)(n.p,{children:"MVC\u67b6\u6784\uff0c\u5305\u62ec\u66f4\u65b0\u7684\u8bbe\u8ba1\uff0c\u90fd\u91c7\u7528\u865a\u62df\u8def\u7531\u3002\u4e5f\u5c31\u662f\u8bf4\uff0cURI\u4e0d\u518d\u5339\u914d\u6839\u76ee\u5f55\u91cc\u7684\u4e00\u4e2a\u6587\u4ef6\uff0c\u4ec0\u4e48URI\u5339\u914d\u4ec0\u4e48\u73b0\u5728\u5b8c\u5168\u53d6\u51b3\u4e8e\u7a0b\u5e8f\u5458\u5e0c\u671b\u5b83\u5339\u914d\u4ec0\u4e48\uff0c\u6bd4\u5982\u5339\u914d\u7a0b\u5e8f\u91cc\u7684\u67d0\u4e2a\u51fd\u6570\uff08\u4e0d\u518d\u4e00\u5b9a\u662f\u811a\u672c\u8bed\u8a00\uff0c\u53ef\u4ee5\u7f16\u8bd1\u8bed\u8a00\u4f8b\u5982C\u8bed\u8a00\u7684\u51fd\u6570\uff09\uff0c\u628a\u51fd\u6570\u7684\u8f93\u51fa\u4f20\u7ed9\u7528\u6237\u3002"}),"\n",(0,c.jsx)(n.p,{children:"\u901a\u5e38\u7684MVC\u8bbe\u8ba1\u4e0b\uff0c\u5728MVC\u4e4b\u524d\u7a0b\u5e8f\u8fd8\u6709\u4e00\u4e2a\u8def\u7531\u5c42\uff0c\u5ba2\u6237\u7aef\u7684HTTP\u8bf7\u6c42\u9996\u5148\u5230\u8fbe\u8fd9\u91cc\uff0c\u7ecf\u8fc7\u8fd9\u91cc\u89e3\u6790\u540e\uff0c\u8f6c\u4ea4\u7ed9\u4e0d\u540c\u7684\u5730\u65b9"}),"\n",(0,c.jsxs)(n.p,{children:["\u4e3e\u4f8b\u6765\u8bf4\u660e\uff0c\u5f53\u7528\u6237\u8bbf\u95ee",(0,c.jsx)(n.code,{children:"http://wwbx.zsxyww.com/Tickets/\u671d\u6656/pending"}),"\u7684\u65f6\u5019\uff0c\u7a0b\u5e8f\u5458\u53ef\u4ee5\u5728\u8def\u7531\u5c42\u5b9a\u4e49\uff1a\u6240\u6709\u4ee5",(0,c.jsx)(n.code,{children:"/Tickets"}),"\u5f00\u5934\u7684URI,\u5168\u90e8\u8f6c\u4ea4",(0,c.jsx)(n.code,{children:"Query()"}),"\u51fd\u6570\u5904\u7406\uff0c",(0,c.jsx)(n.code,{children:"Query()"}),"\u770b\u5230\u8f6c\u4ea4\u8fc7\u6765\u7684\u8bf7\u6c42\u5934URI\u5728",(0,c.jsx)(n.code,{children:"/Tickets"}),"\u540e\u9762\u662f",(0,c.jsx)(n.code,{children:"/\u671d\u6656/pending"}),"\uff0c\u5c31\u53bb\u6570\u636e\u5e93\u67e5\u8be2\u671d\u6656\u7684\u5f85\u89e3\u51b3\u5de5\u5355\uff0c\u7136\u540e\u8c03\u7528\u6e32\u67d3\u51fd\u6570\u8fd4\u56deHTML\u3002\u5728\u670d\u52a1\u5668\u6839\u76ee\u5f55\u4e0b\u9762\u662f\u6ca1\u6709",(0,c.jsx)(n.code,{children:"/Tickets/\u671d\u6656/pending"}),"\u8fd9\u4e2a\u6587\u4ef6\u7684\u3002\u55ef...\u5176\u5b9e\u8fde\u6839\u76ee\u5f55\u90fd\u4e0d\u9700\u8981\u4e86\uff0c"]}),"\n",(0,c.jsx)(n.p,{children:"\u53d1\u5c55\u5230\u540e\u6765\uff0c\u8fdeHTTP\u670d\u52a1\u5668\u4e5f\u6ca1\u6709\u4e86\uff1a\u56e0\u4e3a\u7a0b\u5e8f\u5458\u4eec\u89c9\u5f97\u6bcf\u6b21\u90fd\u8981\u914d\u7f6e\u4e00\u4e2a\u72ec\u7acb\u7684HTTP\u670d\u52a1\u5668\uff08\u6bd4\u5982Apache\uff09\u518d\u6765\u8fd0\u884c\u81ea\u5df1\u7684\u7a0b\u5e8f\u6709\u70b9\u9ebb\u70e6\u3002\u4e8e\u662f\uff0c\u5f88\u591a\u73b0\u4ee3\u7684Web\u6846\u67b6\u5e72\u8106\u81ea\u5df1\u5185\u7f6e\u4e86\u4e00\u4e2a\u8ff7\u4f60\u7684HTTP\u670d\u52a1\u5668\u529f\u80fd\u3002\u542f\u52a8\u7a0b\u5e8f\u65f6\uff0c\u8fd9\u4e2a\u5185\u7f6e\u7684\u670d\u52a1\u5668\u4e5f\u4e00\u8d77\u542f\u52a8\u4e86\uff0c\u8ba9\u5f00\u53d1\u548c\u90e8\u7f72\u53d8\u5f97\u66f4\u7b80\u5355\u3002"}),"\n",(0,c.jsxs)(n.p,{children:["\u5f53\u7136\uff0c\u8fd9\u79cd\u6a21\u5f0f\u4e0b\uff0cURI\u4e5f\u53ef\u4ee5\u4f20\u7edf\u5730\u7ed1\u5b9a\u5230\u67d0\u4e2a\u6587\u4ef6\u4e0a\u3002\u4f8b\u5982\uff0c\u6211\u4eec\u7684\u5b98\u7f51",(0,c.jsx)(n.code,{children:"www.zsxyww.com"}),"\u5728\u63a5\u53d7\u5230\u4efb\u4f55\u65e0\u6548\u7684URI\u65f6\uff0c\u90fd\u4f1a\u5c06\u8bf7\u6c42\u8def\u7531\u5230\u6587\u4ef6",(0,c.jsx)(n.code,{children:"404.html"}),"\u4e0a\uff0c\u8868\u793a\u6ca1\u6709\u627e\u5230\u4f60\u8bf7\u6c42\u7684\u4e1c\u897f\uff0c\u6bd4\u5982\uff0c",(0,c.jsx)(n.code,{children:"www.zsxyww.com/hahaha"}),",\u548c",(0,c.jsx)(n.code,{children:"www.zsxyww.com/aaa/bbb"}),"\u90fd\u6ca1\u6709\u5728\u7a0b\u5e8f\u8def\u7531\u4e2d\u89c4\u5b9a\uff0c\u4e00\u5207\u8d85\u51fa\u89c4\u5b9a\u7684URI\u5168\u90e8\u90fd\u8def\u7531\u5230",(0,c.jsx)(n.code,{children:"404.html"}),"\u6587\u4ef6\u4e0a\uff0c\u8fd4\u56de\u4e00\u4e2a\u9759\u6001\u7684\u6587\u4ef6\u3002"]}),"\n",(0,c.jsx)(n.p,{children:(0,c.jsx)(n.img,{alt:"\u73b0\u4ee3Web\u540e\u7aef",src:i(51616).A+"",width:"1173",height:"501"})}),"\n",(0,c.jsx)(n.h3,{id:"mvc\u6846\u67b6",children:"MVC\u6846\u67b6"}),"\n",(0,c.jsx)(n.p,{children:"MVC\u4f5c\u4e3a\u4e00\u79cd\u7f16\u7a0b\u601d\u60f3\u53ef\u4ee5\u88ab\u7a0b\u5e8f\u5458\u7075\u6d3b\u5730\u4f7f\u7528\uff0c\u4e0d\u8fc7\u4e5f\u6709\u4e00\u4e9b\u5728\u7f16\u7a0b\u8bed\u8a00\u57fa\u7840\u4e0a\u7f16\u5199\u7684MVC\u6846\u67b6\uff0c\u6765\u7ea6\u675f\u7a0b\u5e8f\u5458\u4f7f\u7528MVC\u7684\u601d\u60f3\u5f00\u53d1\u540e\u7aef\uff0c\u4e5f\u7b80\u5316\u4e86\u5f00\u53d1\uff1b\u8fd9\u79cd\u6846\u67b6\u6709\u5f88\u591a\uff0c\u800c\u4e14\u4e0d\u5c11\u7f16\u7a0b\u8bed\u8a00\u90fd\u6709\uff0c\u6211\u4eec\u4ecb\u7ecd\u51e0\u4e2a\u6709\u4ee3\u8868\u6027\u7684\uff1a"}),"\n",(0,c.jsxs)(n.ul,{children:["\n",(0,c.jsx)(n.li,{children:"Ruby on Rails \u7ea6\u5b9a\u5927\u4e8e\u914d\u7f6e"}),"\n",(0,c.jsx)(n.li,{children:"Django"}),"\n",(0,c.jsx)(n.li,{children:"Spring Boot"}),"\n"]}),"\n",(0,c.jsxs)(n.admonition,{type:"info",children:[(0,c.jsxs)(n.p,{children:["\u8fd9\u662f\u4e09\u7bc7\u7cfb\u5217\u6587\u7ae0\u4e2d\u7684\u7b2c",(0,c.jsx)(n.strong,{children:"2"}),"\u7bc7"]}),(0,c.jsx)(n.p,{children:"\u70b9\u51fb\u4ee5\u8df3\u8f6c\uff1a"}),(0,c.jsx)(n.p,{children:(0,c.jsx)(n.a,{href:"/blog/Web%E7%9A%84%E5%8E%86%E5%8F%B21%EF%B8%8F%E2%83%A3-HTTP",children:"HTTP"})}),(0,c.jsxs)(n.p,{children:[(0,c.jsx)(n.strong,{children:"\u52a8\u6001\u7f51\u9875"}),"(\u4f60\u5728\u770b\u7684\u6587\u7ae0)"]}),(0,c.jsx)(n.p,{children:(0,c.jsx)(n.a,{href:"/blog/Web%E7%9A%84%E5%8E%86%E5%8F%B23%EF%B8%8F%E2%83%A3-Web%E5%BA%94%E7%94%A8",children:"Web\u5e94\u7528"})})]})]})}function p(e={}){const{wrapper:n}={...(0,d.R)(),...e.components};return n?(0,c.jsx)(n,{...e,children:(0,c.jsx)(o,{...e})}):o(e)}}}]);