현재 개인 웹 사이트를 개발 중입니다. 처음으로이 작업을 수행 한 것은 아니지만 SSI 구현에 대한 본격적인 첫 번째 시도입니다. 그러나 나는 CGI 환경 변수 중 하나를 비교의 일부로 사용하는 if-else 지시문을 사용하여 벽을 돌았습니다.SSI : CGI 환경 변수와의 문자열 비교 실패
일부 제한된 디버깅 시도 후에도 모든 출력과 문서는 비교 결과가 이어야하며이 완전 실패 함을 의미합니다. 이것은 사실이 아니며 if-else 지시문에 의해 잘못된 평가가 진행되고 있습니다.
<title>Home – dragarch</title>
/Applications/MAMP/htdocs
<link rel="stylesheet" type="text/css" href="../style.css">
<link rel="shortcut icon" type="image/svg+xml" href="../favicon.svg" />
: 파일 index.shtml
의 출력 여기
<title><!--#echo var="page" --> – <!--#echo var="HTTP_HOST" --></title>
<!--#set var="docroot" value="${DOCUMENT_ROOT}" -->
<!--#echo var="docroot" -->
<!--#if expr="($docroot != '/Applications/MAMP/htdocs') || ($docroot != '/home/dragarch/public_html')" -->
<link rel="stylesheet" type="text/css" href="../style.css">
<link rel="shortcut icon" type="image/svg+xml" href="../favicon.svg" />
<!--#else -->
<link rel="stylesheet" type="text/css" href="style.css">
<link rel="shortcut icon" type="image/svg+xml" href="favicon.svg" />
<!--#endif -->
그리고 것 : 파일 headlinks.shtml
의 코드 여기
<head>
<!--#set var="page" value="Home" -->
<!--#include file="headlinks.shtml" -->
<style>
img#ref { float: right; margin-left: 8px; border-width: 0px; }
</style>
</head>
것 : 여기
파일index.shtml
의 코드입니다
style.css
및
favicon.svg
은
index.shtml
과 함께 문서 루트에 있으므로 if 지시문은 실패하고 else 지시문의 출력이 기본값이어야합니다. 보시다시피, 문서 루트 (현재 내 노트의 MAMP htdocs 폴더)는 echo 지시문의 출력에 따라 정확하지만 if-else 지시문의 비교는 문자열을 제대로 비교하지 못합니다.
내 문서이 페이지를 사용하고 있습니다 : http://httpd.apache.org/docs/2.2/mod/mod_include.html
나는이 경우 이유에 완전한 손실에있어, 여기에 약간의 도움이 필요합니다.
편집 : 내가 dragarch
내가 그래서 localhost
를 사용하지 않고 사이트를 테스트 할 수 127.0.0.1을 가리 키도록 /etc/hosts
구성된 호스트 있음을 알아 두셔야합니다. 사용하기에 더 예쁜 호스트 이름처럼 행동하는 것 이외에는 어떤 기능에도 실제 효과가 없습니다.
expr =은 if 지시문의 구문 일부입니다. expr = 뒤에 나오는 따옴표 안에있는 모든 것이 테스트되는 조건입니다. –
입력 및 그 결과로 나타나는 주저에 감사드립니다. :) 그냥 xor 식으로 바꾸면됩니다. –
오신 것을 환영합니다! 저는 매주 일반 엔지니어링 C 프로그래밍 과정에 학생들을 적극적으로지도하고 있습니다. 그래서 제가 도움을 얻을 수있는 기회에 자연스럽게 뛰어 들었습니다. 여러분 모두가 여러분의 코드를 다시 생각하게 만들었지 만, –