WordPress 규칙에도 예외가 있습니다.

워드 프레스 아파치

워드 프레스 아파치WordPress는 블로깅 플랫폼에서 크게 발전하여 개정 추적, 사용자 지정 메뉴에 대한 더 많은 지원 및 도메인 매핑을 통한 다중 사이트 지원을 통해 본격적인 콘텐츠 관리 시스템에 더 가깝게 이동했습니다.

콘텐츠 관리 시스템 중독자가 아니더라도 괜찮습니다. 이 기사를 건너 뛸 수 있습니다. 하지만 동료 테크노 광, 코드 헤드, 아파치 애호가들에게 흥미롭고 멋진 것을 공유하고 싶습니다.

다중 사이트는 단일 WordPress 설치로 여러 WordPress 웹 사이트를 실행할 수있는 기능입니다. 여러 사이트를 관리하는 경우 승인 된 테마 및 위젯 그룹을 설치하고 클라이언트 사이트에 대해 활성화 할 수 있기 때문에 좋습니다. 도메인 매핑에는 몇 가지 기술적 장애물이 있지만 프로세스는 어렵지 않습니다.

내가 확인한 문제 영역 중 하나는 테마 사용자 지정입니다. 테마는 여러 웹 사이트에서 사용할 수 있으므로 테마에 대한 모든 사용자 지정은 다중 사이트 설치에서 해당 테마를 사용하는 다른 사이트에도 영향을줍니다. 이 문제를 해결하는 방법은 사용자 지정을 시작하기 전에 테마를 복제하고 스타일을 지정할 클라이언트 사이트의 테마 이름을 명확하게 지정하는 것입니다.

또 다른 흥미로운 문제는 Apache 서버의 .htaccess 파일에서 일어나는 일입니다. WordPress는 블로그별로 경로를 다시 작성해야하며 다시 쓰기 규칙과 PHP 파일을 사용하여이를 수행합니다.

WordPress는 다음 재 작성 규칙을 사용합니다.

RewriteRule ^ ([_ 0-9a-zA-Z-] + /)? files /(.+) wp-includes / ms-files.php? file = $ 2 [L]

기본적으로 mysite.com/files/directory의 하위 디렉토리에있는 모든 항목은 mysite.com/files/wp-includes/myblogfolderpath…에 다시 작성됩니다. mysite.com/files/myfolder/myimage.jpg라는 파일이 서버에 실제로 있어야하는 경우 어떻게됩니까? 404 오류가 발생합니다. Apache 재 작성 규칙이 시작되고 경로가 변경됩니다.

물론, 당신은이 문제를 결코 발견하지 못할 수도 있지만, 나는 그랬습니다. 다른 웹 사이트의 자바 스크립트 위젯을 사용해야하는 사이트가 있었고 mysite.com/files/Images/myfile에서 그래픽을 찾아야했습니다. 호스트 사이트에서 파일을 변경할 수있는 방법이 없었기 때문에 서버에서이 작업을 수행하는 방법을 찾아야했습니다. 쉬운 해결책은 특정 파일에 대한 예외를 만드는 재 작성 조건을 만드는 것입니다.

여기에 솔루션입니다 :

RewriteCond % {REQUEST_URI}! /? files / Image / file1.jpg $
RewriteCond % {REQUEST_URI}! /? files / Image / file2.jpg $
RewriteRule ^ ([_ 0-9a-zA-Z-] + /)? files /(.+) wp-includes / ms-files.php? file = $ 2 [L]

재 작성 조건은 재 작성 규칙 전에 배치해야합니다. 그렇지 않으면이 트릭이 작동하지 않습니다. 비슷한 문제가 발생하면 자신의 목적에 맞게이 조건을 쉽게 수정할 수 있습니다. 이 솔루션은 제 디자인에 적합하지 않은 덜 바람직하지 않은 대체 텍스트 대신 사용자 정의 그래픽을 대체 할 수있게하여 저에게 잘 맞았습니다. 바라건대 그것은 당신에게도 효과가있을 것입니다.

당신은 어떻게 생각하십니까?

이 사이트는 Akismet을 사용하여 스팸을 줄입니다. 댓글 데이터 처리 방법 알아보기.