Apache PHP относительный путь не распознан

Я застрял с установкой клиента платформы Ushahidi. Я получил API, работающий благодаря модулю переписать. Сейчас я настраиваю клиент платформы, но мне это не удается.

Итак, вот мои html документы:

HTML

     index.html

     about.html

     Платформа-клиент <~ подкаталог

         сервер

         WWW

             .Htaccess

             index.html

вот мой .htaccess в моей платформе-клиенте:

RewriteEngine on

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^.*$ /index.html  [PT,L]

Вот платформа-клиент / сервер / www / index.html:

<!doctype html>
<html lang="en" ng-strict-di>
<head ng-controller="PageMetadata">
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="/fonts/Lato/css/fonts.css" rel="stylesheet" type="text/css">
<!-- @todo minify CSS -->
<link rel="stylesheet" href="/css/style.css" ng-href="{{rtlEnabled ? '/css/rtl-style.css' : '/css/style.css'}}">
<link rel="stylesheet" href="/css/vendor.css">
<script src="/config.js"></script>

<title ng-bind-template="{{pageTitle}} {{siteTitle}}"></title>
<meta name="description" content="{{pageDescription}}">
<meta name="keywords" content="{{pageKeywords}}">
<meta name="robots" content="{{pageRobots}}">
<base href="/">
</head>

<body ng-class="{ rtl : rtlEnabled }" class="has-dynamic-header" canvas>
<div id="bootstrap-loading">
<header class="header header-full overlay" role="banner">
<div class="container">
<div class="color-overlay">
<div class="parallax">
<h1 class="beta"><i class="fa fa-refresh fa-4 fa-spin"></i></h1>
</div>
</div>
</div>
</header>
</div>

так далее….

Когда я запускаю сайт, я получаю сообщение об ошибке, а не правильное. Когда я также проверяю элемент, я вижу, что /css/style.css указывает на мой корневой каталог, который является доменом.

 www.example.com/css/style.css

так должно быть:

www.example.com/platform-client/server/www/css/style.css

ОБНОВЛЕНИЕ: вот мой httpd.conf:

NameVirtualHost *:80

<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ServerName example.com
ServerAlias www.example.com
</VirtualHost>

<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/html/platform-client/server/www
ServerName example.com/platform-client/server/www
<Directory "/var/www/html/platform-client/server/www">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>

Есть проблемы с моей настройкой? Мне очень нужна твоя помощь, потому что я исправлял это почти неделю безуспешно. Буду рад любой помощи. Спасибо!

0

Решение

Итак, чтобы решить эту проблему, добавьте следующую запись A в вашу запись DNS:

*    A    <your host's ip-address>

Каждый возможный поддомен вашего домена теперь будет указывать на один и тот же хост. Ваш хостинг-провайдер, вероятно, позволяет вам добавлять записи DNS через некоторую панель конфигурации, например cpanel. Если они это сделают, будьте осторожны с тем, что вы измените. Неправильные изменения могут оставить вашего хозяина в эфире на несколько часов. Если они не разрешают использовать «*» в качестве субдомена, просто введите нужный субдомен.

Затем включите следующие два VirtualHosts в ваш httpd.conf — в идеале, как и в папку / etc / apache2 / sites-enabled, но вы можете позаботиться о том, чтобы украсить вашу конфигурацию позже:

<VirtualHost *:80>
ServerAdmin webmaster@<yourdomain>.com
DocumentRoot /var/www/html
ServerName www.<yourdomain>.com
ServerAlias <yourdomain>.com
</VirtualHost>

<VirtualHost *:80>
ServerAdmin webmaster@<yourdomain>.com
DocumentRoot /var/www/html/platform-client/server/www
ServerName <subdomain>.<yourdomain>.com
</VirtualHost>

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

/var
/www
/<yourdomain>.com
/www
/htdocs
index.html and everything
else for your default
website goes here
/<subdomain>
/htdocs
index.html and everything
else for your Ushithingy
installation goes here

И соответственно скорректируйте документацию в своих виртуальных хостах. Причина, по которой вам следует это сделать, заключается в том, что, пока один веб-сайт находится в пределах документирования другого веб-сайта, все еще возможно получить доступ ко второму веб-сайту через первое определение виртуального хоста — только тогда страницы будут выглядеть испорченными из-за различий docroot и абсолютные ссылки на страницах. Другое преимущество упорядоченной структуры каталогов заключается в том, что вы можете использовать mod_vhost_alias для определения веб-сайтов для многих поддоменов с помощью одного простого определения виртуального хоста. Но опять же, это на потом.

Если все готово, перезапустите сервер apache, и все должно быть хорошо.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]