7.x 버전대

ImageCache 모듈의 "Failed generating an image from 이미지파일명 using imagecache preset 이미지캐쉬_프리셋명" 에러 대응책

ImageCache 모듈의 "Failed generating an image from 이미지파일명 using imagecache preset 이미지캐쉬_프리셋명" 에러 대응책

이미지캐쉬 모듈은 아주 유용하면서도 필수적인 모듈(이미지의 캐쉬 기능이 이상이다)이며,
또한 고장이 잘 나지않는, 드루지기의 추천 모듈 탑10에 들어가는 모듈이다. (이미지의 확대/축소/자르기/워터마크 등이 가능)

그런데 아래와 같은 에러가 나면서 어지간해서 고쳐지지 않고 캐쉬 이미지가 깨지는 현상이 발생했다.

드루팔 시스템 로그를 관리화면에서 보면

action(id:8): imagecache_effects_watermark failed for sites/드루팔.사이트명/files/imagecache_sample.png

Failed generating an image from 이미지파일명 using imagecache preset 이미지캐쉬_프리셋명

에러가 줄지어서 발생하고, 사용자 화면에서는 축소표시할 썸브네일 이미지가 전혀 나타나지 않았다.

______________________

결론적으로 아래와 같은 원인과 파일접근 권한부여 조치로 문제를 해결했으나,
여러 문제 케이스가 있을 수 있으므로 가능한 모든 체크 항목을 메모해 둔다.

원인 : 해당 이미지캐쉬_프리셋명의 특정 액션에서 사용할 이미지가 아파치 서버에서 접근 불가능한 권한설정이었다.

______________________

이미지캐쉬 모듈의 고장시 체크 항목 (범위가 넓다)

1. 드루팔 시스템 로그

Powered by Drupal을 안보이게 하고 싶다면

드루팔 테마 종류에 따라서
Powered by Drupal가 눈에 잘 띄는 경우가 있다.

크게 문제되지 않고, 경우에 따라 어떤 무료 테마는 강제 표시 조항이기도 하다.

정작 걱정할 문제는 드루팔임을 일부러 알리고 싶지 않은,
보안이나 오픈소스 공격이 크게 염려되는 사이트이다.
드루팔로 꾸미되 드루팔이 아닌 것처럼 보이게 하고 싶은 경우,
(많지는 않겠지만) 그런 희망이 있는 이들을 위해 메모해 둔다.

아래와 같은 방법들이 있다.

1. 우선 관리 >> 블럭 설정에서 풋터 부분에 Powered by Drupal 항목이 있는지 살펴 보자.

2. 해당 테마 설정에 가서 부가적으로 Powered by Drupal 항목을 안보이게 하는 옵션이 있는지 살펴 보자.

3. 1번도 2번도 해당 사항이 없다면, 해당 테마를 직접 수정하면 된다.
   이때, sites/all/theme에서 해당 테마 폴더를 전체 복사해서,
   sites/해당사이트/theme/아래로 복사할 필요가 있다. (커스터마이징시 권장사항)
   그래야만 나중에 본래 테마가 업그레이드 돼도 본인이 커스터마이징한 내용이 보관된다.

아문센 프로젝트용 본문 Terms 가공 모듈 - 최종 적합은 glossary

아문센 프로젝트용 본문 Terms 가공 모듈 - 최종 적합은 glossary

드루지기들이 최근 수행하고 있는 가칭 아문센 프로젝트에는,
관리자에서 설정한 용어들(텀즈)들을 위 첨부 그림처럼
주석 보이게 하는 과제가 있었다.

용도가 비슷한 입력필터 모듈이 있었지만,
카테고리 분류 기능까지 필요했으므로 최종 사용하기로 한 것은
glossary 모듈 - http://drupal.org/project/glossary
이다. (이하 그로서리)

여러 후보들 특히 glossify 등의 모듈들이 있었지만,
다국어 지원 문제나 손쉬운 운영관리 면을 고려해 최종 그로서리 모듈로 낙점이 됐다.

설치 및 사용법을 메모해 둔다.


1. 모듈을 설치/활성화한다.

2. 관리 >> 입력 형식에서 디폴트 타입(혹은 컨텐츠 타입에 맞게)을 지정한다.
여기서는 예로 Filtered HTML을 지정.

3. 관리 >> admin/settings/glossary 에 가면 그로서리 모듈에 대한
세세한 부분을 설정 가능한데, 아래 항목들을 체크해 두는 것이 좋다.

3.1 그로서리 설정화면에서, 아까 예로 든 Filtered HTML 탭을 선택.

- Select Vocabulary:에 있는 Taxonomy 항목들.

- Link type:노멀

3.2 그로서리 설정화면에서, 일반(번역에 따라 "공통") 탭을 선택.

- Show glossary across many smaller pages를 체크.

REST Server 모듈을 설치하려고 하나, spyc 라이브러리의 부족으로 활성화가 되지 않는 경우.

Services모듈을 사용해 드루팔 C/S개발 환경을 꾸미려고,
REST Server 모듈을 다운로드 받아 설치하려고 하니,
spyc 라이브러리의 부족으로 활성화가 되지 않았다.

이런 경우, 아래 주소에서 spyc 관련 소스를 다운로드 받아,
http://spyc.googlecode.com/files/spyc-0.5.zip

드루팔의 아래 폴더에
modules/services/servers/rest_server/lib

spyc.php를 복사해 넣으면 된다.

참고 주소 ; http://drupal.org/node/1349836

드루팔 모듈 사용순위별 랭킹

드루팔 모듈 사용순위별 랭킹.

http://drupal.org/project/usage

에 가면 사용빈도에 따른 모듈 일람이 있다.
아주 무거운 페이지이므로 인내를 요한다.

본문 내 키워드로 링크 및 카테고리를 자동생성하는 모듈들 (조사중)

(각각의 모듈들을 조사 중 작성한 글이라, 완성도가 다소 떨어지는 글입니다)

http://drupal.org/project/linkintel
/admin/settings/linkintel 에서 설정, 링크크론을 리셋할 수도 있다.
크론에 의지해서 정기적으로 관련 링크 작성.
링크가 생성되면 관련 노드의 본문 우측상단 탭에 결과가 표시됨.
첨부 이미지 참고.

현재까지 살핀 바로는 가장 좋아 보인다.

-----------------------------------------------

http://drupal.org/project/glossify
링크를 생성할 키워드를 일일이 Taxonomy로 설정.
아래 모듈이 함께 필요하다.
http://drupal.org/project/simplehtmldom

* 다국어 환경에서 키워드 링크 걸 때 버그가 있는 듯 하다.

설치/활성화 후 주의점 둘.
- Make sure to enable the Glossify filter for the input-formats here: /admin/settings/filters/list
- Install the Hovertip module to use hovertips http://drupal.org/project/hovertip

-----------------------------------------------

http://drupal.org/project/alinks
이 모듈도 링크를 생성할 키워드를 일일이 설정해야 하는 것이 부담.

glossify모듈을 설치/활성화한 후의 warning: preg_replace() [function.preg-replace]: Compilation failed: support for \P, \p, and \X 경고 메시지 대처법.

glossify모듈을 설치/활성화한 후의 warning: preg_replace() [function.preg-replace]: Compilation failed: support for \P, \p, and \X 경고 메시지 대처법.

・현상 : glossify모듈을 설치/활성화한 후, 에러는 아니지만 관리자 화면에 아래와 같은 경고가 나타났다.

warning: preg_replace() [function.preg-replace]: Compilation failed: support for \P, \p, and \X has not been compiled at offset 5 in /드루팔이 설치된 디렉토리/sites/all/modules/glossify/glossify.module on line 414.

・원인 : 호스팅 OS상의 PCRE Unicode support 문제이다.

・해결 : 아래와 같이 시스템 패키지를 수정해야 한다. (루트 권한 필요.)


기존의 현상의 확인.

# pcretest -C

PCRE version 6.6 06-Feb-2006
Compiled with
UTF-8 support
No Unicode properties support
Newline character is LF
Internal link size = 2
POSIX malloc threshold = 10
Default match limit = 10000000

경고 메시지 대처법 - Strict warning: strtotime(): It is not safe to rely on the system's timezone settings.

경고 메시지 대처법 - Strict warning: strtotime(): It is not safe to rely on the system's timezone settings.

・현상 : 호스팅 서버의 PHP 버전을 업그레이드한 후, 에러는 아니지만 드루팔 관리자 화면에 아래와 같은 경고가 잔뜩 나타났다.

Strict warning: strtotime(): It is not safe to rely on the system's timezone settings.
Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. e selected '...지역그룹/지역...' for '...타임존 설정...' instead in ... 함수명 ... 모듈명.

・원인 : php.ini의 타임존 설정이 잘못되거나 공백인 탓이다.

・해결 : php.ini를 백업한 후 아래와 같이 수정해야 한다.
    (호스팅 회사에 의뢰할 수도 있지만, 요즘 호스팅은 VPS인 경우가 많아서 독자적으로 수정 가능. 루트 권한 필요.)


기존의 문제 부분.

[Date]

Google CSE를 이용해서 해당 사이트의 구글 검색 결과를 임베이드해보자

* 아래 팁은 https 환경에서는 작동하지 않습니다.
* 아래 팁은 2020년 이후로는 작동을 보증할 수 없습니다.
* 2020년 이후로는 구글에서 생성한 코드로 커스텀 검색하는 것을 추천합니다. (최종 댓글을 참고)

--- (아래 글은 파기 대상) ---

웹 생태계는 끊임없이 변한다. 그 와중에,
구글 검색 결과를 사이트에 접목하는 과거의 자료를 갱신하게 되었다. (드루팔8 기준)

애드센스를 이용하지 않고 아래 주소에서 바로 자바스크립트를 생성, Google CSE모듈에 해당 커스텀 검색엔진 아이디만 넣으면 바로 작동하는 형태이다.


1. 우선 관리자 계정으로 Google CSE 모듈을 설치/활성화한다.
https://www.drupal.org/project/google_cse
의존성 관계로 Search 모듈도 활성화해야 한다.

2. admin/config/search/pages 메뉴에 가서, Search Page Type항목에서 Google CSE Search를 하나 추가한다.
추가된 항목을 검색 Defaults로 설정한다. 해당 Google CSE Search에서 수정을 눌러
Google Custom Search Engine 항목에 값을 입력할 준비를 한다.

3. https://cse.google.com/cse/all 로 가서 해당 사이트를 등록하고 Google Custom Search Engine ID 를 발급받는다.
해당 사이트의 도메인을 입력하는 것을 잊지말자.

사이트 오프라인 상태에서 다시 관리자로 로그인하는 방법은?

드루팔의 관리 기능 중에, 사이트 정비(Maintenance) 페이지를 설정하는 화면이 있다.
admin » settings » site maintenance(admin/settings)

이 기능은 참으로 편리해서, 드루팔 사이트를 Offline 정비 모드로 설정하면
일반 사용자들은 사이트의 기능을 사용 못하고, 오프라인 정비 메시지를 보게 된다.
관리자는 기존의 웹페이지 환경을 그대로 이용할 수 있어 정비 작업이 원활하다.

그런데 이런. 어쩌다 오프라인 작업 중인 관리자용 웹브라우저를 확 닫아버렸다.
다시 들어갔더니 해당 드루팔 사이트의 로그인 세션이 사라졌다.
물론 관리자 권한은 온데간데 없고 일반 유저처럼 오프라인 메시지만 보인다.

이런 경우, 아래와 같은 웹 주소 입력을 하면 오프라인 사이트임에도 불구하고
다시 로그인 창이 뜬다. 관리자로 다시 아이디/패스워드를 입력하면
관리 화면을 접할 수 있다.

http://드루팔사이트/?q=user

촌각을 다투는 긴급 정비 상황이라면 이 주소 찾아내는 것도 힘들 것 같아 메모해 둔다.
팁 치고는 너무 간단.

참고 주소는,
http://drupal.org/node/56995
How to log in once you have turned your site off-line for maintenance

Syndicate content