Home > Internet > WordPress na home.pl

WordPress na home.pl

Udało się! Blog postawiony, lecz oczywiście nie obyło się bez kłopotów.

Pierwszy problem – nie działa mod rewrite. Nie przepadam za zwykłymi linkami, więc bardzo mi na nim zależało. Okazało się, że wordpress jest przystosowany do serwera Apache, a mój hosting (home.pl) oferuje IdeaWebServer. Na szczęście home.pl zamieścił w dokumentacji remedium na ten problem tutaj.

W pliku vars. (znajdującym się w katalogu wp-includes) znajdujemy linijkę

$is_apache = ( strstr($_SERVER['SERVER_SOFTWARE'], 'Apache') ||
strstr($_SERVER['SERVER_SOFTWARE'], 'LiteSpeed') ) ? 1 : 0;

i zamieniamy ją na

 $is_apache = ( strstr($_SERVER['SERVER_SOFTWARE'], 'Apache') ||
strstr($_SERVER['SERVER_SOFTWARE'], 'LiteSpeed') ||
strstr($_SERVER['SERVER_SOFTWARE'], 'IdeaWebServer')) ? 1 : 0;

Jednak nie był to koniec problemów. Przy próbie dokonania jakichkolwiek zmian w „widgetach” otrzymywałem błąd 500 serwera. Po dłuższych poszukiwaniach znalazłem rozwiązanie na stronie Krzysztofa Burghardta. Można na niej znaleźć skrypt poprawiający problem. Jednak działa on pod linuksem. Użytkownicy systemu Windows powinni wyedytować plik pluggable.php (katalog wp-includes):

Znajdujemy poniższy kod:

function wp_redirect($location, $status = 302) {
	global $is_IIS;
 
	$location = apply_filters('wp_redirect', $location, $status);
	$status = apply_filters('wp_redirect_status', $status, $location);
 
	if ( !$location ) // allows the wp_redirect filter to cancel a redirect
		return false;
 
	$location = wp_sanitize_redirect($location);
 
	if ( $is_IIS ) {
		header("Refresh: 0;url=$location");
	} else {
		if ( php_sapi_name() != 'cgi-fcgi' )
			status_header($status); // This causes problems on IIS
                                                           and some FastCGI setups
		header("Location: $location");
	}
}

I zamieniamy go na ten:

 
function wp_redirect($location, $status = 302) {
	global $is_IIS;
 
	$location = apply_filters('wp_redirect', $location, $status);
	$status = apply_filters('wp_redirect_status', $status, $location);
 
	if ( !$location ) // allows the wp_redirect filter to cancel a redirect
		return false;
 
	$location = wp_sanitize_redirect($location);
	if ($location[0] == '/')
		$location = get_bloginfo('url') . $location;
 
	if ( $is_IIS ) {
		header("Refresh: 0;url=$location");
	} else {
		if ( php_sapi_name() != 'cgi-fcgi' )
			status_header($status); // This causes problems on IIS
                                                          and some FastCGI setups
		header("Location: $location");
	}
}

Teraz powinno chodzić bez żadnego problemu. Działa dla wersji 2.6.5.

Tagi: , , , ,

Krzysztof Zajączkowski

  1. Listopad 5th, 2011 at 12:17 | #1

    Witam, jak wygląda sprawa z WP_v3.2.1 i home.pl ? mam problem związany z białą stroną przy dodawaniu jakiejkolwiek strony w menu->wygląd w PA, klikając dodaj do menu(zaznaczony checkbox strony) uzyskuję w efekcie totalnie białą stronę na której się nic nie znajduje identycznie przy próbie na standardowym temacie dołączonym do WP stosowałem poprawki Szymona (http://wpninja.pl/artykuly/home-pl-i-wordpress-apteczka-pierwszej-pomocy/) z myślą o tym że coś tu pomoże ale nie pomogło. pozdrawiam Mateusz F.

  1. No trackbacks yet.