.htaccess-Konfigurationsproblem

.htaccess-Konfigurationsproblem

Ich verwende zwei Websites auf einer Domain, nämlich: www.example.com & www.example.com/site2. Ich möchte wissen, dass es auf meiner Site2, auf meiner Site2, zwei Ordner mit den Namen Ordner1 und Ordner2 gibt. Meine index.php befindet sich in Ordner2, aber die Definition der in Ordner2 definierten Methoden. Ich schließe die Dateien über .htaccess ein, aber ich kann die Dateien, die sich in Ordner1 befinden, nicht abrufen und erhalte die Fehler 500 und 400 im Browser. Ich verwende die folgenden Zeilen, aber sie funktionieren nicht in der .htaccess-Datei

Die folgende Zeile funktioniert einwandfrei

RedirectMatch ^/$ http://www.example.com.pk/site2/views/

AllowOverride All
php_value include_path ".:/home/example/public_html/site2/system"

Antwort1

Möchten Sie Ihre Methoden und Klassen für die Verwendung durch PHP einbinden? Wenn ja, möchten Sie höchstwahrscheinlichinclude()- oder require()-Funktionenin Ihrem PHP-Code, anstatt es über Apache zu tun.

Ich kann Ihrer Frage nicht wirklich entnehmen, was Sie genau erreichen möchten. Wenn Sie für Ihre Includes wirklich Apache verwenden müssen, erweitern Sie Ihre Frage bitte, um weitere Details anzugeben.

Antwort2

Außerdem enthält Ihre aktuelle .htaccess-Datei keine Dateien, sondern legt nur den von PHP verwendeten Include-Pfad fest. Stellen Sie sich also diesen Dateibaum vor:

root
| - a
|   |- myphp.php
| - b
|   |- myinclude.extension

Wenn Sie myphp.php in die PHP-Datei einbinden, würden Sie normalerweise Folgendes tun:

<?php include('../b/myinclude.extension'); ?>

Aber nach dem Einstellen

AllowOverride All php_value include_path "root/b/"

Sie müssen nur eingeben

<?php include('myinclude.extension'); ?>

aber das macht wirklich keinen großen Unterschied, oder? Bitte lesen Sie die php.net-Seiten zu include, require und include_once, require_once durch.

verwandte Informationen