Ошибка .htaccess, поднявшись в сервер

Ранее был posteado этот вопрос, как создания дружеских унифицированных указателей ресурса, не теряя стилей css и файлы js и imágenes.

В localhost функционируй верно без какой-либо проблемы. Проблема появилась во время пересылания в сервер hostgator (главный домен, связанный с сервером) дружеских унифицированных указателей ресурса оно не функционирует www.example.com/online/video/hd/free/ он посылает мне прямо в страницу ошибки 404

реализуйте доказательства с другими дружескими url другого файла .htaccess чтобы видеть, был ли сервер или не принимая дружеские унифицированные указатели ресурса, но оно функционировало верно без какой-либо проблемы.

Проблема находится в этом файле .htaccess или скорее в маршруте RewriteBase /project/

В localhost проект: project-> localhost/project/index.php

Он упомянул точно о том, что ошибка - в маршруте RewriteBase /project/ потому что в localhost если не существует имя проекта, или если он существует, и было написано плохо имя или другое имя, которое не: project выходит та же ошибка на сервере, той же ошибке, которая у меня есть.

# Activamos mod_rewrite
RewriteEngine on

# Seleccionamos el directorio base para el RewriteRule
RewriteBase /project/

# Aquí nos evitamos comprobar que sea un archivo (agrego comprobación
# para detectar también directorio) en cada conjunto de reglas
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^(.*)$ $1 [QSA,L]

# Obtenemos todo lo que vaya tras "assets/" y subdirectorios previstos
RewriteCond %{REQUEST_URI} assets/(css|fonts|js|img)/(.+)$
# Entonces (si se cumplen todas las condiciones) redirigimos (R)
# y dejamos de evaluar el resto de reglas (L)
RewriteRule ^(.*)$ assets/%1/%2 [L,R]

# Tu/s regla/s
RewriteRule ^online-video-en-hd-gratis/?$ video.php [L,NC,QSA]
RewriteRule ^online/video/hd/free/?$ online.php [L,NC,QSA]

Я пробовал таким образом: RewriteBase /www.example.com/ и таким образом RewriteBase /public_html/ но без успеха оно не функционирует.

ЗАМЕТЬ: Домен пример: www.example.com прямая в public_html без какой-либо другой папки а именно не exite папка, как случается в других добавочных доменах, что они равны в public_html, но в специфической папке пример папка: OTRAPAGINA.COM


public_html (поскольку возможно наблюдать, существует index.php также прямой online.php в папке public_html, потому что он связан с главным доменом в домен, конфигурировавший с сервером.)

introducir la descripción de la imagen aquí

Сервер - linux / индеец-апачи реализовал доказательства с этим файлом .htaccess и я функционирую хорошо, посетив следующая унифицированные указатели ресурса www.example.com/online/video/hd/free/

RewriteEngine on
RewriteRule ^online/video/hd/free/$ online.php [L,NC,QSA]

Унифицированные указатели ресурса конкретная он: www.example.com/online.php

Но в файле .htaccess что у меня есть проблемы, посетив сама унифицированный указатель ресурса www.example.com/online/video/hd/free/ я direcciona в страницу ошибки 404.


Также, потом я считаю подумавшим использовать вторую структуру:

public_html -> EXAMPLE.COM(<- carpeta) -> online.php

если это не был главный домен, если не добавочный dominido и это было так: как он был бы должен изменять .htaccess?

3
задан 13.04.2017, 16:00
0 ответов

Директивный орган RewriteBase определяет префикс унифицированного указателя ресурса, который используется как основание (из-за каталога в .htaccess) во всех RewriteRule. Она необходима, когда используются относительные маршруты.

Например, служи для того, чтобы директивные органы:

RewriteEngine On
RewriteRule ^carpeta/usuarios$  /carpeta/usuarios.php
RewriteRule ^carpeta/publicaciones$  /carpeta/publicaciones.php

Будьте эквивалентными (но избавляя от каких-то символов) в:

RewriteEngine On
RewriteBase /carpeta
RewriteRule ^usuarios$  /usuarios.php
RewriteRule ^publicaciones$  /publicaciones.php

1. Менять RewriteBase для того, чтобы он применился к корню сайта

В случае, что твоего сайта, ты работаешь в root домена, на которое просто нужно менять линию:

# Seleccionamos el directorio base para el RewriteRule
RewriteBase /project/

Из-за:

# Seleccionamos el directorio base para el RewriteRule
RewriteBase /

2. Второй домен

Относительно твоего второго вопроса, завись если public_html/EXAMPLE.COM это второй конфигурировавший домен этой формы (это показалось бы так), или, если просто соглашаются на папку с этим именем.

  1. Если это второй домен

    В существо другой домен, DocumentRoot http://example.com прямо оно будет функционировать в этой папке, а следовательно не было бы необходимым ничего не менять, так как http://example.com/online.php он будет искать внутри этой папки, без необходимости повторно писать унифицированный указатель ресурса.

    А именно, было бы действительным работать также с:

    RewriteBase /
    
  2. Если он не конфигурировался как домен (я не думаю, что это случай)

    Если просьбы идут direccionadas в, например: http://tusitio.com/EXAMPLE.COM/online.php; тогда да мог бы использоваться RewriteBase как следующий для того, чтобы уберегаться быть должное использовать абсолютный маршрут:

    RewriteEngine On
    RewriteBase /EXAMPLE.COM
    
2
ответ дан 03.12.2019, 17:50
  • 1
    Спасибо @Mariano очень просвет, консультация? это не основывается в мой вопрос, но в моем файле .htaccess как redireccionó всегда с бруском в конце концов в унифицированных указателей ресурса Дружеский ? Пример: example.com/online/video/hd/free redireccionar Замечает example.com/online/video/hd/free/ : две формы функционируют без проблем как tambié n таким образом example.com/online-video-hd-free также así: example.com/online-video-hd-free/ - что-то сходное, чтобы использовать домен с www или без www (Это определяется в Google в вебмастерах, чтобы предотвращать penalizació n из-за дублированного контента) –  08.01.2017, 18:21
  • 2
    чтобы предотвращать то идеальное - redireccionar всегда с бруском в конце концов / в унифицированные указатели ресурса дружеские . –  08.01.2017, 18:23
  • 3
    @J.Mick Как только ты убедился, что это не существующий файл, só нужен создавать это один RewriteRule ^(.*[^/])$ $1/ (хотя это уже новый вопрос, и есть много других пользователей, что ты podrí an ответить раньше má s rá я прошу, печатал ли ты это). –  08.01.2017, 20:49
  • 4
    @J.Mick, Если это хорошие вопросы, нет lí mite... Ло decí в, потому что así у тебя был немедленный ответ –  08.01.2017, 23:13
  • 5
    Стоит друг спасибо не funcionó сейчас realizó новый вопрос? –  08.01.2017, 23:40