서버 마이그레이션 후 홈페이지 만 작동


33

최근에 WordPress 사이트 호스팅을 VPS.net으로 변경했습니다 . 모든 파일을 옮기고 데이터베이스를 가져 왔습니다. 링크를 클릭 할 때까지 모든 것이 정상으로 보였고 모든 페이지가 홈페이지를 제외하고 404를 다시 가져 오는 것을 알았습니다.

사이트 URL은 http://inksquared.com입니다.


답변:


42

나는 당신이 http : // yoursite 하지만 http : // yoursite / anything 을 얻는 것 같아요

비슷한 문제가 있었고 변경했을 때 해결되었습니다.

httpd.conf에서

AllowOverride None

AllowOverride All

내 이해에 따라 .htaccess적용됩니다.


6
이것은 나를 위해 일했습니다. 대부분의 사람들은 이것을 잊어 버립니다.
qasimzee

1
이것은 나에게도 효과가 있었고 apache2.conf, /var/www내 경우에는 서버 파일의 위치 섹션에서만 변경해야했습니다.
sponrad

1
이것은 저에게 답의 일부였습니다. 내가 추가 한 AllowOverride All사이트 구성,하지만도 추가 Options FollowSymLinks. 그런 다음 사용자 지정 영구 링크를 사용할 수 있었고 적절한 루트 .htaccess 파일도 만들었습니다. 그 후 모든 것이 효과가있었습니다.
boot13

1
그리고 아파치를 다시 시작하는 것을 잊지 마십시오! "sudo service apache2 restart"
gradosevic

1
효과가있었습니다. conf 파일의 위치에서 AllowOverride 옵션을 변경하십시오.
Najeeb

44

mod_rewrite 규칙을 플러시하십시오.

대시 보드-> 설정-> 영구 링크

설정 저장 (변경할 필요 없음)


7
실제로 저장할 필요조차 없습니다. 규칙은 해당 페이지를 방문하기 만하면 플러시되며 규칙을 플러시하려면 .htaccess에 쓰는 것이 포함됩니다.
John P Bloch

나는 매일 새로운 것을 배웁니다 ... :)
Chip Bennett

@ john 필요한 경우 페이지로드 만 .htaccess에 씁니다. 데이터베이스의 rewrite_rules 만 플러시된다는 인상을 받았습니다.
Ashfame

WP - 관리자 / 옵션 - permalinks.php 전화 flush_rewrite_rules(), 래퍼 WP_Rewrite::flush_rules()경우, 이는, $hard이다 true(해당 페이지에서 호출 할 때 인) 및 함수 save_mod_rewrite_rules(정의 존재 wp-admin/includes/misc.php, 모든 관리자 페이지에 포함)가 호출 save_mod_rewrite_rules(). 이 함수의 정의는 여기를 참조하십시오 : core.trac.wordpress.org/browser/trunk/wp-admin/includes/…
John P Bloch

실제로 .htaccess에 다시 쓰기 규칙을 작성하는 함수 insert_with_markerssave_mod_rewrite_rules()위에서 정의 한대로
John P Bloch

27

나는 같은 문제에 직면했다.

우분투 서버에서 해결하기 위해 다음을 수행했습니다.

  1. 에서 /etc/apache2/apache2.conf , 편집 에 AllowOverride 없음 에 대한 은 / var / www /에서에 AllowOverride 모든

  2. 다음 명령을 입력하여 .htaccess에 대해 mod_rewrite를 활성화하십시오.

sudo a2enmod 다시 쓰기

  1. 아파치 서버를 다시 시작하십시오 :

sudo 서비스 아파치 2 재시작

문제가 해결되었습니다 !!!


감사합니다. 다른 제안 으로이 문제를 해결할 수 a2enmod rewrite는 없었지만 트릭을 수행했습니다.
Martin McCallion 2016 년

+1 다시 쓰기 모드를 언급합니다. 이것이 기본적으로 활성화되어 있지 않다는 것을 몰랐습니다.
Native Coder

sudo a2enmod rewrite이 wokring을 얻으려면 분명히 필요했습니다 . 감사합니다!
Huskie69

1
감사! 명령 a2enmod rewrite은 나를 위해 속임수를 썼다.
Lucas Basquerotto

고마워요 Avinash! Lucas와 마찬가지로 a2enmod 재 작성이 나를 위해 속임수를
썼습니다

1

.htaccess파일이 복사되지 않았을 가능성이 높습니다 . Mac OS X 및 일부 FTP 응용 프로그램에서이 파일은로 시작하므로 "숨김"으로 간주됩니다 .. 관리자 섹션의 설정-> 영구 링크 섹션으로 이동하면이 파일을 다시 생성 할 수 있지만 이전에 사용했던 버전을 찾아 다시 사용하는 것이 가장 좋습니다 (특히 캐싱 플러그인을 사용하는 경우).


1

우분투 14.04에서 000-default.conf 파일은 여기에서 찾을 수 있습니다/etc/apache2/sites-available

또는 여러 개의 wp를 실행하면 가상 호스트 설정이 구성 파일 이름이됩니다. 예 : domain.conf

당신은 교체 AllowOverride None해야합니다AllowOverride All

이것이 효과가 있기를 바랍니다.


0

웹 서버 (404) 또는 워드 프레스 (404)가 있습니까? 웹 서버 404 인 경우 이전 설치에서 루트 htaccess 파일을 복사하지 않았거나 올바른 실행 권한이 없습니다.

내 첫 번째 문제 해결 항목은 루트에 htaccess 파일이 있는지 확인하고 확인하는 것입니다. 그리고 그렇다면 포함되어있는 것.


.htaccess 파일을 확인했습니다. 워드 프레스 관리자 패널의 퍼머 링크 섹션에 나타난 것과 동일한 코드를 포함합니다. 쓰기 권한으로 권한을 변경했으며 명백한 변경 사항이 없습니다.
mikeyrocks

3
@mikeyrocks 흠 ... 또 다른 가능성은 새 서버에 mod_rewrite가 설정되어 있지 않을 수 있습니다. 중요 : 서버 404 ( "찾을 수 없음"이라는 일반 흰색 페이지) 또는 WordPress 404 (다른 사이트 스타일)가 표시됩니까?
MathSmath
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.