Не работает home.php и index.php?
Здравствуйте помогите пожалуйста!
Все время вносил изменение темы сразу на сайте, а тут решил установил свою тему на Open Server. Решил доделаю шаблон темы и перенесу сразу на сайт, со всеми изменениями. В шаблоне темы не было фала front-page.php. Создал его, за основу взял page.php (front-page создавался как станица для лендинга).
И теперь у меня 2 проблемы которые я не знаю как исправить:
1) В настройках меняю: на Статическая страница — Страница записей. Потом перехожу на сайт он не показывает ничего просто грузится сайт а контента нет.
Пробовал менять на: Ваши последние записи, он подгружает шаблон front-page.php.
Если меняю на Статическая страница — Главная страница загружает сайт (шаблон подгружает front-page.php). То есть на страница записи как я знаю он должен грузить Home.php но он его не грузит.
Какой шаблон страницы работает проверял через плагин: What The File.
Так же удалял файл front-page.php с сайта.
Менял на :
Последние записи;
Статическая страница — Главная страница;
Статическая страница — Страница записей.
Он вообще перестает тогда что то показывать на главной странице (просто вечная загрузка). Обычные страницы грузит. А на главной при выборе всех 3 вариантах, перестает работать (если удаляешь файл front-page.phр). Он же должен home.php или index.php использовать как шаблон страницы но он их не грузит.
С поморью этого плагина проверил свой сайт который не на Open Server, а на Хостинге там home.php видеть.
Проверил версию php на Хостинге и на Open Server:
На Хостинге стоит 5.6.
А на Open server 7.2.
Я почему то думаю что из за версий php, у меня не хочет видеть файл не index.php не home.php.
И нужно теперь подправлять код в этих файлах. А что именно нужно подправит в этих файлах я не знаю. Помогите пожалуйста!
Вроде подробно расписал.
Простой 2 комментария
get_template_part( ‘content’, get_post_format() );
?>
if ( get_theme_mod(‘blog_layout’,’classic’) == ‘classic’ ) :
get_sidebar();
endif;
?>
index.php not loading by default
I have just installed CentOS, Apache and PHP. When I visit my site http://example.com/myapp/, it says «forbidden». By default it’s not loading the index.php file. When I visit http://example.com/myapp/index.php, it works fine. Any idea how to fix that issue?
9 Answers 9
Apache needs to be configured to recognize index.php as an index file.
The simplest way to accomplish this..
Edit: I’m assuming apache is configured to allow .htaccess files. If it isn’t, you’ll have to modify the setting in apache’s configuration file (httpd.conf)
I think you mean php.ini. Regardless, his apache isn’t recognizing index.php as a directory index file. Whether its handling php files is another apache config issue.
It is best practice never to use .htaccess files unless necessary (i.e. if you are a user in a shared hosting environment and .htaccess is the only way to set your custom configuration options, then this is the only solution, but to do it when you have administrative access results in both a security risk and a significant performance hit. If you have access, that same directive can go in httpd.conf . There are few downsides to doing this either; if a project doesn’t use php, the index.php file wouldn’t exist there anyway.
To add to @staticsan’s comment, ensure too that you have php enabled: in httpd.conf uncomment the appropriate LoadModule line (e.g., LoadModule php7_module . )
While adding ‘DirectoryIndex index.php’ to a .htaccess file may work,
In general, you should never use .htaccess files
This is quoted from http://httpd.apache.org/docs/1.3/howto/htaccess.html
Although this refers to an older version of apache, I believe the principle still applies.
Adding the following to your httpd.conf (if you have access to it) is considered better form, causes less server overhead and has the exact same effect:
Edit: At the time of edit, the v1.3 documentation is down. The v2.4 documentation (current version at time of edit) has a similar stance:
In general, use of .htaccess files should be avoided when possible. Any configuration that you would consider putting in a .htaccess file, can just as effectively be made in a section in your main server configuration file.
@Rhdr: Thanks for pointing that out. Post has been updated with a new link to v2.4 documentation, so should no longer be dead.
At a guess I’d say the directory index is set to index.html, or some variant, try:
DirectoryIndex index.html index.php
This will still give index.html priority over index.php (handy if you need to throw up a maintenance page)
@Webnet then you should consider changing Type and LoadModules to php so it read php [stackoverflow.com/questions/5121495/…
This might be helpful to somebody. here is the snippet from httpd.conf (Apache version 2.2 windows)
# DirectoryIndex: sets the file that Apache will serve if a directory # is requested. # DirectoryIndex index.html DirectoryIndex index.php
now this will look for index.html file if not found it will look for index.php.
This post might be old but i am just posting it incase it helps some other person, I would not advise to Create a .htaccess file in your web root and change the index. I feel it is better to follow the steps
- Go to the conf folder of your apache folder mine is C:\Apache24\conf
- Open the file named httpd.conf
- Go to the section
DirectoryIndex index.html index.php
This way, it still picks index.html and index.php as the default index but giving priority to index.html because index.html came before *index.php. By this I mean in you have both index.html and index.php in the same directory, the index.html will be used as the default index except you write **index.php* before index.hml
I hope it helps someone. Happy Coding
index.php не загружается по умолчанию
Я только что установил CentOS, Apache и PHP. Когда я посещаю мой сайт http://example.com/myapp/, он говорит «запрещено». По умолчанию он не загружает файл index.php. Когда я нахожусь http://example.com/myapp/index.php, он отлично работает. Любая идея, как исправить эту проблему?
9 ответов
Изменить: я предполагаю, что apache настроен для разрешения файлов .htaccess. Если это не так, вам придется изменить параметр в файле конфигурации apache (httpd.conf)
Я думаю, что вы имеете в виду php.ini. Несмотря на это, его apache не распознает index.php как файл индекса каталога. Является ли его обработка php файлами другой проблемой конфигурации apache.
При добавлении «DirectoryIndex index.php» в файл .htaccess может работать,
В общем, вы никогда не должны использовать файлы .htaccess
Это цитируется http://httpd.apache.org/docs/1.3/howto/htaccess.html
Хотя это относится к более старой версии apache, я считаю, что принцип все еще применяется.
Добавление следующего в ваш httpd.conf(если у вас есть к нему доступ) считается лучшей формой, приводит к меньшей нагрузке на сервер и имеет тот же эффект:
Я считаю, что добавление этого в файл конфигурации default-ssl также хорошо, если вы используете HTTPS.
Угадаю, я бы сказал, что индекс каталога установлен в index.html или какой-то вариант, попробуйте:
DirectoryIndex index.html index.php
Это все равно даст приоритет index.html над index.php(удобно, если вам нужно выбросить страницу обслуживания)
Это может быть полезно кому-то. вот фрагмент из httpd.conf(окна Apache версии 2.2)
# DirectoryIndex: sets the file that Apache will serve if a directory # is requested. # DirectoryIndex index.html DirectoryIndex index.php
теперь это будет искать файл index.html, если не найден, он будет искать index.php.
У меня была такая же проблема с сайтом на нашем сайте с прямым администрированием. Я добавил
как пользовательское расширение httd (которое добавляет код в файл сайтов httpd ), а сайт затем запускал index.php по умолчанию.
Попробуйте создать файл .htaccess со следующим
Изменить: На самом деле, нет ли пакета «php-apache» или чего-то, что вы должны установить с ними обоими?
Для справки: в некоторых Apache2 conf вы должны добавить команду DirectoryIndex в mods_enabled/dir.conf(он не находится в apache2.conf)
Прочитав все это и попытавшись исправить это, я получил простое решение на форуме ubuntu (https://help.ubuntu.com/community/ApacheMySQLPHP). Проблема заключается в модуле libapache2-mod-php5. Вот почему браузер загружает файл index.php, а не показывает веб-страницу. Сделайте следующее. Если sudo a2enmod php5 возвращает модуль не существует, то проблема связана с libapache2-mod-php5. Очистить удалить модуль командой sudo apt-get -purge удалить libapache2-mod-php5 Затем установить его снова sudo apt-get install libapache2-mod-php5
Перед тем, как попробовать любой из вышеперечисленных методов,
Пожалуйста, попробуйте следующее:
- выберите файл index.php
- щелкните правой кнопкой мыши
- снова переименуйте в index.php
Загрузите страницу, и теперь она отлично работает.
это сработало для меня, когда я столкнулся с этой ошибкой.
Ещё вопросы
- 1 Как заполнить данные в JComboBox?
- 0 Выполнить очередь jQuery случайное количество раз
- 0 C ++ == перегрузка операторов (имплементации)
- 1 Как слушать один из его компонентов JButton?
- 0 Нарисуйте 2 куба в OpenGL, используя GLM
- 0 Jquery Image объект
- 1 WebRequest всегда попадает в NetworkError.WebRequestAlreadyFinished
- 0 PHP парсинг XML
- 0 Чтобы найти общие значения столбца sql в месяц, используя php динамически
- 0 Как открыть новое окно в angularjs и вариант для печати?
- 0 Зацикливание SVG прямоугольников из базы данных
- 0 Отметьте флажок, когда ссылка нажата — jquery
- 1 найти индекс значений, содержащих ключевое слово в массиве python [duplicate]
- 1 как передать объект коллекции в response.sendRedirect
- 1 Vue директива после V-для
- 1 Javascript на стороне клиента: как получить заголовок ответа HTTP-запроса, когда CORS не разрешен?
- 1 Android Design: Intentservice вызывает приложение не отвечает
- 1 Как получить размер итератора без зацикливания?
- 0 Скелетная страница css подменю ie7
- 0 Скрытие ближайшего div с указанным классом
- 0 $ .getJson () предел ответа
- 0 Неверное выражение пути. Должно быть StateFieldPathExpression
- 1 Как транслировать канал YouTube (например, Mecca Live) в своем приложении?
- 0 JQuery датчик для координат
- 1 Валюта текстовое поле реагировать родной
- 1 Доступ к API Bloomberg из браузера клиента в JavaScript
- 0 Почему переполнение вывода std :: cout?
- 1 JAXB: Вы должны указать каждое поле, которое будет включено?
- 1 Элемент бара D3.js не добавляется динамически
- 1 Управление вкладками Firefox в селене
- 1 Не могу загрузить файл в мое хранилище Firebase — ошибка 403 Запрещено
- 0 Импорт в dockerized mariadb при начальной сборке со скриптом
- 0 Почему это работает? Очистка объекта JavaScript, используемого в качестве формы
- 0 Как использовать оператор управления (оператор if) во вложенной директиве ng-repeat?
- 0 не могу понять термин «статический»
- 1 Lightinject — Обнаружена рекурсивная зависимость
- 0 Другой веб-домен и хостинг
- 0 как выбрать таблицу по метке th с помощью jquery
- 1 Используйте методы получения и установки класса Kotlin Model внутри Android Activity
- 1 Расширение mvc с двумя входами
- 1 Создать строку из n символов без цикла [duplicate]
- 0 Присоединиться по user_id в Symfony
- 1 Python scipy функция не принимает глобальные переменные
- 1 JSR-303 ошибки проверки на сущности не отображаются в JSP
- 0 Fusioncharts — 2D Column Stack, отображающий ограниченные записи
- 0 Обновление JQuery до более новой версии, но какой?
- 0 Объединение и сортировка 2 каналов
- 1 Регистрация в Facebook / Google в приложении Firebase для Android
- 1 Pygame: заставить вещи двигаться медленнее, чем 1
- 0 значения не отображаются с помощью угловой директивы