Problema de configuración .htaccess

Problema de configuración .htaccess

Estoy usando dos sitios web en un dominio como: www.example.com y www.example.com/site2. Quiero saber que en mi sitio2, en mi sitio2 hay 2 carpetas con el nombre carpeta1 y carpeta2, mi index.php está en la carpeta2 pero la definición de métodos definidos en la carpeta2 estoy incluyendo los archivos a través de .htaccess pero no puedo obtenerlos. archivos que están en la carpeta 1 y obtienen Error-500 y 400 en el navegador y estoy usando las siguientes líneas pero no funcionan en el archivo .htaccess

La línea de abajo funciona bien

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

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

Respuesta1

¿Está intentando incluir sus métodos y clases para que PHP los use? Si es así, lo más probable es que quieras utilizarfunciones incluir() o requerir()dentro de su código PHP en lugar de hacerlo a través de Apache.

Realmente no puedo decir por tu pregunta exactamente qué estás tratando de lograr. Si realmente necesita utilizar Apache para sus inclusiones, amplíe su pregunta para brindar más detalles.

Respuesta2

Además, su archivo .htaccess actual no incluye archivos, solo establece la ruta de inclusión que utiliza php. Entonces, imagina este árbol de archivos:

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

Cuando incluyes en el archivo php myphp.php, normalmente harías esto:

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

Pero después de configurar

AllowOverride All php_value include_path "root/b/"

solo necesitas escribir

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

pero eso realmente no hace una gran diferencia, ¿no? Lea las páginas de php.net sobre include, require e include_once, require_once.

información relacionada