2017-02-02 2 views
0

Ich arbeite tatsächlich auf einer Website für eine kleine Firma. Zuerst habe ich einen Test in einem Unterverzeichnis ("Site") gemacht, wo meine WordPress-Website installiert wurde. Die Sache ist, dass ich meine Website schließlich bereitstellen wollte, ohne den gesamten Inhalt in das Stammverzeichnis zu verschieben. Übrigens, ich fand dieses Tutorial und folgte ihm, da ich mit WordPress nicht ganz vertraut bin.WordPress: Fehler 500 nur mit index.php

Ich kann jetzt auf alle meine Seiten zugreifen, zum Beispiel www.mywebsite.fr/index.php/page/. Aber das Problem ist, dass ich nicht auf die Hauptseite zugreifen kann (ohne "index.php/page /" oder auch ohne "/ page /"). Es hält Fehler zurückgegeben 500.

.htaccess (Root-Verzeichnis)

# BEGIN WordPress 

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase /site/ 
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /site/index.php [L] 
</IfModule> 

# END WordPress 

index.php (root directory)

<?php 
/** 
* Front to the WordPress application. This file doesn't do anything, but loads 
* wp-blog-header.php which does and tells WordPress to load the theme. 
* 
* @package WordPress 
*/ 

/** 
* Tells WordPress to load the WordPress theme and output it. 
* 
* @var bool 
*/ 
define('WP_USE_THEMES', true); 

/** Loads the WordPress Environment and Template */ 
require(dirname(__FILE__) . '/site/wp-blog-header.php'); 

.htaccess ('/ site' Verzeichnis)

RewriteEngine On 
RewriteBase /site/ 
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /site/index.php [L] 

index.php (Verzeichnis '/ site')

Und das Beste von allem, der Kunde wählte ein Webhosting ohne Php-Protokoll ... Jemand haben eine Idee? (Sorry für mein Englisch.)

Antwort

0

Überprüfen Sie, ob die Wordpress-URL gesetzt und die Site-Adresse www.mydomain.com/site/ ist auf www.mydomain.com

Es sieht auch wie Ihre Wurzel .htaccess ist falsch, versuchen Sie dies (ändern mydomain.com zu Ihrer Domain)

<IfModule mod_rewrite.c> 
    RewriteEngine on 
    RewriteCond %{HTTP_HOST} ^(www.)?mydomain.com$ 
    RewriteCond %{REQUEST_URI} !^/site/ 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ /site/$1 
    RewriteCond %{HTTP_HOST} ^(www.)?mydomain.com$ 
    RewriteRule ^(/)?$ site/index.php [L] 
</IfModule> 

Sie auch die folgende Zeile zu ändern in der Wurzel index.php versuchen:

require(dirname(__FILE__) . '/site/wp-blog-header.php'); 

bis:

require('/site/wp-blog-header.php'); 
+0

Vielen Dank für Ihre Antwort! Ihr .htaccess war der richtige. Die index.php im root-Verzeichnis war in Ordnung, ich musste es nicht ändern. Es funktioniert jetzt gut –