다시 리눅스 sendmail 관련 질문입니다.
아래와 같은 java 프로그램으로 메일을 보내려고 합니다.
학교에서 제공하는 smtp.postech.ac.kr 서버를 씁니다.
리눅스가 깔린 컴에 프로그램을 저장 후 실행시키면(html 파일) 실행은 잘 됩니다. 그리고 메일을 보낼려고 하는데 ***@postech.ac.kr 메일로는 잘 가지만 다른 메일 ***@hanmail.net 등으로는 메일이 가지 않습니다. 이유를 잘 모르겠습니다.
리눅스에서 메일관련 세팅해야되는 것이 무엇인가요?
<%@ page contentType="text/html;charset=euc-kr"
import="java.util.*, javax.mail.*, javax.mail.internet.*"
%>
<%! // 함수 선언할 때는 ! 붙여줍니다.
public String kr(String s) {
try {
s = (s == null) ? "" : new String(s.getBytes("8859_1"),"KSC5601");
} catch (java.io.UnsupportedEncodingException uee) {}
return s;
}
%>
<html><head><title>메일전송결과</title>
<%
// 사용자가 입력한 메일 전송 자료를 저장
String mailFrom = null;
String mailTo = null;
String title = null;
String contents = null;
String htmltag = null;
// Resin 일 경우 kr을 뺍니다. 한글변환을 하지 않습니다.
// 톰캣일 경우 소스 그대로 사용합니다. 한글변환 필요합니다.
mailFrom = request.getParameter("from");
mailTo = request.getParameter("to");
title = request.getParameter("title");
contents = request.getParameter("content");
htmltag = "<font color=BLUE size=2>";
contents = htmltag + contents;
// Session을 생성하기 위해 java.util.Properties 클래스를
// 생성하고 자신이 해당하는 SMTP 호스트 주소를 할당합니다.
Properties props = new Properties();
props.put("mail.smtp.host", "smtp.postech.ac.kr");
// 기본 Session을 생성하고 할당합니다.
Session msgSession = Session.getDefaultInstance(props, null);
%>
</head>
<body bgcolor="#D0E0FF">
<center>
<%
try {
// Message 클래스의 객체를 Session을 이용해 생성합니다.
MimeMessage msg = new MimeMessage(msgSession);
InternetAddress from = new InternetAddress(mailFrom);
msg.setFrom(from);
InternetAddress to = new InternetAddress(mailTo);
msg.setRecipient(Message.RecipientType.TO, to);
msg.setSubject(title);
msg.setContent(contents, "text/html; charset=EUC-KR");
Transport.send(msg);
%>
축하합니다. 요청하신 메일 전송이 완료되었습니다.<br>
좋은 하루 되세요.<br>
<a href="http://ims.postech.ac.kr">to IMS</a>
<%
}
catch (MessagingException e) {
e.printStackTrace();
%>
<center>죄송합니다. 메일 전송이 실패하였습니다.<br>
관리자에게 문의하세요.<br>
<a href="#" onClick="history.back()">돌아가기</a>
<% } %>
</center></body></html>
mail relay에 관한 문서를 찾아서 읽어주세요. smtp.poste
mail relay에 관한 문서를 찾아서 읽어주세요. smtp.postech.ac.kr이 님의 메일을 다른 곳으로 보낸다면 그게 더 큰 문제입니다.
댓글 달기