정적 HTML 페이지를 구현하는 방법에는 여러 가지가 있지만 모든 사람이 정적 페이지를 구현하는 방법을 아는 것은 아닙니다. 이제 Foxin의 편집자가 ASP에서 정적 페이지를 구현하는 방법을 소개합니다. 관심있는 친구들이 와서보세요.
1. isapi_rewrite를 사용하여 HTML 정적 URL을 동적으로 연결하고 다시 작성하십시오. Isapi_rewrite는 DLL 구성 요소이며 RE_WRITE는 IIS의 모듈입니다. 이 필터 구현은 일반 표현식을 사용하여 동적 웹 URL을 정적 URL에 매핑합니다. 예를 들어, RE_WRITE를 통해 News.asp? id = 95를 News/95.html로 변환 할 수 있습니다. 매핑 정규 표현식은 httpd.ini 파일로 설정됩니다.
작은 예를 들어 보려면 : 데이터 페이지 턴을 처리하려면 쓰기 방법은 다음과 같습니다.
more _ <%= page%> _ <%= type%>. html (참고 : 페이지 수는 회전하고 유형은 데이터 유형입니다) 표현식 양식 : more_1_95.html
다음 페이지로 전환하면 다음 페이지입니다. More_2_95.html이고 다음 페이지의 루프를 계속하십시오.
more_3_95.html 등.
그러나 httpd.ini 파일에 다음 코드를 추가해야합니다.
rewriterulle /more_(d+)_+).html /jsp 튜토리얼 /more.asp? page = $ 1 & type = $ 2 [n, i] 문자열 9
동적 프로그램에 전달할 여러 매개 변수가있는 경우 다음과 같이 다중 (D+)를 추가하십시오.
REWRITERULLE /MORE_(D+)_ (d+)_ (d+)_+).html /asp/more.asp?page=$1&type=$2&type2=$3 [n, i]
장점 : 기본적으로 프로그램을 변경할 필요가 없습니다. 문제 :이를 위해 IIS를 제어해야하므로 다른 사람의 서버를 빌릴 때는 먼저 서비스 제공 업체에 문의해야합니다. (물론 이것은 ASP를위한 것입니다. ASP.NET 튜토리얼을 사용할 필요가 없습니다. 프로그램의 BIN에 직접 DLL 어셈블리를 넣은 다음 적절하게 구성 할 수 있습니다).
2. IIS의 404 오류 처리 메커니즘 : 오류를 사용자 정의하여 준비한 처리 페이지로 돌아갑니다. 그러나이 확장 성을 연구해야하며 프로그램 처리에 대한 전반적인 요구 사항도 높으며 실제 응용 분야에 적합하지 않습니다.
먼저 사이트 속성 - 사용자 정의 오류를 설정하십시오
HTTP 오류 404를 찾은 다음 속성 -> 메시지 유형을 편집하고 URL-> URL을 선택하여 "/index.asp"또는 오류 처리 페이지를 작성하십시오.
이러한 방식으로, 예를 들어, 사용자 또는 스파이더가 http : //cn/12345.html을 방문 할 때 (12345는 데이터베이스 자습서의 기사의 ID입니다). 일부 페이지는 존재하지 않기 때문에 404 오류가 트리거되었습니다. index.asp로 전환
index.asp를 추가하십시오
코드 사본은 다음과 같습니다.Currdomain = request.servervariables ( "http_host") '현재 액세스 도메인 이름
currurl = replare (request.servervariables ( "query_string"), "404; http : //"& currdomain & ": 80", ") 'currurl 액세스
현재 Currurl은 12345.html이어야합니다.
3.
1. 새 폴더 정보 만들기 (최종 액세스 정보의 페이지 URL이 http : // localhost/info/? 1.html이기 때문에)
2. 정보 폴더에서 새 default.asp 파일을 만듭니다 (이는 기본 홈페이지의 페이지)
Default.asp 파일의 내용은 다음과 같습니다
코드 사본은 다음과 같습니다.<%
Currdomain = request.servervariables ( "http_host") '현재 액세스 도메인 이름
currurl = replace (request.servariables ( "query_string"), "404; http : //"& currdomain & "/info/?", ") 'Curror Accessed URL
id = replace (currurl, ". html", "")
%>
여기서 ID는 전달 된 매개 변수입니다
여러 매개 변수가 있으면 의사를 전적으로 정보로 전환 할 수 있습니다.
그 중 1, 2 및 3은 각각 3 개의 매개 변수의 값을 나타내며, 분리 된 문자열은 별도로 제안 될 수있다.
실제 HTML 정적 페이지
html 코드를 파일에 쓰고 .html 형식으로 파일을 생성합니다.
코드 사본은 다음과 같습니다.<%
filename = "test.htm"
요청 ( "body") <> "" "" "그럼
set fso = server.createobject ( "scripting.filesystemobject")
set htmlwrite = fso.createtextfile (server.mappath ( ""filename ""))
htmlwrite.write "<html> <head> <title>"request.form ( "title") "</title> </head>"
htmlwrite.write "<body> 출력 제목 내용 :"request.form ( "title") "<br/> 출력 본문 내용 :"request.form ( "body") "</body> </html>"
htmlwrite.close
fout = 아무것도 설정하지 않습니다
FSO = 아무것도 설정하지 않습니다
끝 If
%>
<form name = "form"method = "post"action = "">
<입력 이름 = "제목"value = "title"size = 26>
<br>
<textarea name = "body"> body </textarea>
<br>
<br>
<입력 유형 = "제출"이름 = "제출"value = "html 생성">
</form>
2. 그러나 위의 방법에 따라 HTML 파일을 생성하는 것은 매우 불편합니다. 두 번째 방법은 템플릿 기술을 사용하여 템플릿의 특수 코드 값을 양식 또는 데이터베이스 필드에서 허용되는 값으로 대체하여 템플릿 함수를 완성하는 것입니다. 최종적으로 대체 된 모든 템플릿 코드에서 HTML 파일을 생성합니다. 이 기술은 더 많이 사용되며 대부분의 CMS는이 방법을 사용합니다.
template.htm '// 템플릿 파일
코드 사본은 다음과 같습니다.<html>
<헤드>
<title> $ title $ by aspid.cn </title>
</head>
<body>
$ body $
</body>
</html> testtemplate.asp '// html을 생성합니다
<%
dim fso, htmlwrite
희미한 스트리트 타이틀, 스트론트, 스트라우트
'// 파일 시스템 객체를 만듭니다
set fso = server.createobject ( "scripting.filesystemobject")
'// 웹 템플릿 파일을 열고 템플릿 내용을 읽으십시오.
set htmlwrite = fso.opentextfile (server.mappath ( "template.htm"))
Strout = F. Readall
htmlwrite.close
strtextle = "생성 된 웹 페이지 제목"
strcontent = "생성 된 웹 페이지 컨텐츠"
'// 템플릿의 태그를 실제 콘텐츠로 바꾸십시오.
Strout = Replace (Strout, "$ title $", Strtitle)
Strout = Replace (Strout, "$ body $", strcontent)
'// 생성 할 정적 페이지를 만듭니다
set htmlwrite = fso.createtextfile (server.mappath ( "test.htm"), true)
'// 웹 페이지에 컨텐츠를 작성합니다
htmlwrite.writeline Strout
htmlwrite.close
응답. "정적 페이지가 성공적으로 생성되었습니다!"
'// 파일 시스템 객체를 해제합니다
htmlwrite = nothing을 설정하십시오
FSO = 아무것도 설정하지 않습니다
%>
이 기사에서는 ASP에서 정적 페이지를 구현하는 방법을 소개합니다. 필요한 친구는 그것을 참조 할 수 있습니다.