Для того, чтобы работали "красивые ссылки" Настройки —> ЧПУ (постоянные ссылки)
В тот момент, когда вы задаете ЧПУ, WordPress сам создает файл .htaccess. В зависимости от настроек конкретного хостинга иногда вордпресс не может создать самостоятельно этот файл: тогда нужно создать самому файл .htaccess и положить в корень вордпресса. WP до версии 2.5 на странице настройки пермалинков показывали рекомендуемое содержимое .htaccess, в WP2.5 почему-то этого нет. Видимо, в связи с тем, что его можно найти на любом тематическом форуме.
Для WP в корне сайта .htaccess содержит следющий код Код:
Код:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Если у вас блог Вордпресс установлен в папку домена, например: site.ru/blog/, то .htaccess будет таким:
Код:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
PS На некоторых хостингах файлы, имена которых начинаются с точки, вообще не видны через ftp. http://forum.maxsite.org/viewtopic.php?pid=23812#p23812
Что можно использовать в пермалинках (постоянных ссылках):http://codex.wordpress.org/Using_Permal … cture_Tags
Гуглил, не нашел? | Личка — для общения, форум — для вопросов. Смертный грех №11 — не прочитать РИДМИ.
Прошу Вашей помощи!Пытаюсь настроить красивые ссылки (WP 2.6.5). Получаю такое же сообщение, как на вашем скриншоте. Копирую содержание в окошечке и вставляю его в файл .htaccess (оказалось, что он у меня есть). Таким образом теперь вместо
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase /WP/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /WP/index.php [L] </IfModule>
# END WordPress
у меня в файле .htaccess теперь
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule>
# END WordPress
Нажимаю "сохранить изменения" и появляется "Теперь вы должны обновить файл .htaccess." А это как? Спасибо.
Нажимаю "сохранить изменения" и появляется "Теперь вы должны обновить файл .htaccess." А это как?
Где нажимаете и где появляется?
Вообще-то WP не смотрит (не смотрел), что лежит в .htaсcess, он туда только писать умеет, когда прав хватает. Так что он может посчитать нужным обновить файл даже тогда, когда в .htaccess всё правильно. Кстати, именно поэтому не стоит вписывать свои директивы в секцию WordPress - перепишет при первом же удобном случае.
И еще один момент. Содержимое .htaccess одинаково для любых схем ЧПУ, но различное для различных дислокаций (в корне или в поддиректории).
"Лучший способ убедить дурака, что он не прав, — позволить ему поступить по-своему." (Джош Биллингс)
много раз обсуждалась на форуме, ну то что написано попробавал, так и не получилось у меня Если бы ваш файл .htaccess был доступен для записи, мы могли бы сделать это автоматически, но это не так. Вот правила mod_rewrite, которые должны быть в файле .htaccess. Кликните на поле и нажмите CTRL + a, чтобы выделить весь текст.
а какие права должны быть на htaccess??? у меня при создании в корне вордпреса файла htaccess и записи в него содержимого для /blog/ хост выдаёт ошибку 500... ВАаще чё это может быть? Хост руцентр
У меня была аналогичная ситуация. НУжно было изменить ЧПУ, чтобы привязать внешнюю ссылку. .htaccess не нашел, пришлось создавать самому. Следовал советам в этой теме. Создал в текстовом редакторе, поставил атрибут 777, однако в результате не работает ни одна ссылка на сайте. Все время выдает страницу 404. И что теперь?..Я блин целый день бьюсь на этим сайтом..Уже мозги кипят!
Ежели ваш хостинг идёт на сервере IIS то стандартно вам покажет 404 Вам надо попросить у хостинга создание собственной страницы ошибки для вашего сайта и там прописать вот такой код , вернее надо исключить из страницы ошибки вот это: <!-- HTTP Errors section should only be enabled if the "Error Pages" feature has been delegated as "Read/Write" at the Web Server level. <httpErrors> <remove statusCode="404" subStatusCode="-1" /> <error statusCode="404" prefixLanguageFilePath="" path="/index.php" responseMode="ExecuteURL" /> </httpErrors> --> Полный образец htaccess файла на все случаи жизни вот такой :
# # Apache/PHP/Application settings: #
# Protect files and directories from prying eyes. <FilesMatch "\.(engine|inc|info|install|module|profile|po|sh|.*sql|theme|tpl(\.php)?|xtmpl)$|^(code-style\.pl|Entries.*|Repository|Root|Tag|Template)$"> Order allow,deny </FilesMatch>
# Don't show directory listings for URLs which map to a directory. Options -Indexes
# Follow symbolic links in this directory. Options +FollowSymLinks
# Make Application handle any 404 errors. ErrorDocument 404 /index.php
# Force simple error message for requests for non-existent favicon.ico. <Files favicon.ico> ErrorDocument 404 "The requested file favicon.ico was not found. </Files>
# Set the default handler. DirectoryIndex index.php
# Override PHP settings. More in sites/default/settings.php # but the following cannot be changed at runtime.
# Requires mod_expires to be enabled. <IfModule mod_expires.c> # Enable expirations. ExpiresActive On
# Cache all files for 2 weeks after access (A). ExpiresDefault A1209600
# Do not cache dynamically generated pages. ExpiresByType text/html A1 </IfModule>
# Various rewrite rules. <IfModule mod_rewrite.c> RewriteEngine on
# If your site can be accessed both with and without the 'www.' prefix, you # can use one of the following settings to redirect users to your preferred # URL, either WITH or WITHOUT the 'www.' prefix. Choose ONLY one option: # # To redirect all users to access the site WITH the 'www.' prefix, # (http://example.com/... will be redirected to http://www.example.com/...) # adapt and uncomment the following: # RewriteCond %{HTTP_HOST} ^example\.com$ [NC] # RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301] # # To redirect all users to access the site WITHOUT the 'www.' prefix, # (http://www.example.com/... will be redirected to http://example.com/...) # uncomment and adapt the following: # RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC] # RewriteRule ^(.*)$ http://example.com/$1 [L,R=301]
# Modify the RewriteBase if you are using Application in a subdirectory or in a # VirtualDocumentRoot and the rewrite rules are not working properly. # For example if your site is at http://example.com/application uncomment and # modify the following line: # RewriteBase /application # # If your site is running in a VirtualDocumentRoot at http://example.com/, # uncomment the following line: # RewriteBase /
# Rewrite URLs of the form 'x' to the form 'index.php?q=x'. RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !=/favicon.ico RewriteRule ^(.*)$ index.php?q=$1 [L,QSA] </IfModule>
Помогите создать этот файл. Не могу найти его в папках Как это делается в каком редакторе. Если есть добрые люди пришлите файл целиком и скажите какие нужно внести изменения У меня отображаются кракозябры, при перемене кодировки - на юникод все нормально. Но мне для этого надо каждый раз переключать кодировку. Спасибо Вам за помощь. А может мне не этот файл нужно менять а что-то другое?
текстовый файл создаете, сохраняете. переименовываете его (включая расширение, т.е. был 123.txt — стал .htaccess) все. открываете его любым вменяемым текстовым редактором и пишете в него все что нужно.
Гуглил, не нашел? | Личка — для общения, форум — для вопросов. Смертный грех №11 — не прочитать РИДМИ.
текстовый файл создаете, сохраняете. переименовываете его (включая расширение, т.е. был 123.txt — стал .htaccess) все. открываете его любым вменяемым текстовым редактором и пишете в него все что нужно.
В добавок: только если используете Windows, то так просто переименовать в .htaccess не удастся. Чтобы создать файл с необходимым названием и расширением, то "сохраните как" файл в WordPad или каком-нибудь другом редакторе, но не в блокноте.
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^phpfunc/function/(\w+)$ phpfunc/?f=$1
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
помогите с ЧПУ. Вот сам попытался написать, но ничего не вышло
есть страница http://mysite/phpfunc/?f=echo - ему передается по GET название функции которой надо вывести, в данном случае функция echo я хочу чтобы информация о функции echo выводилось по след. адресу http://mysite/phpfunc/function/echo или http://mysite/phpfunc/function/echo/ если есть разница с таким .htaccess как наверху выводится "страница не найдена". как я понял в .htaccess синтаксис ^ и $ входящий урл, в () значение, после пробела преобразование урла, $1 вывод значения
Не, я понимаю, что 4 часа утра, скоро на работу, глазки слипаются, а мозги не думают... Но скопировать-то корректно я пока могу. А ссылки - НЕ РАБОТАЮТ!
Бен, это Данила, ай нид хелп!
А, и нажалуюсь! Когда ставишь "Показать как выпадающий список" - оно работает (правильно , ссылки же "кривые" юзаются)! А мне-то не надо!
Бьюсь над этой проблемой уже неделю, все бесполезно. Вроде все делаю правильно: копирую код, создаю в Нотпаде файл .htaccess, кидаю его в корень, но ссылок как не было видно, так и нет. Написал хостеру, подумав, что может проблема в нем, но мне ответили: "мы никак не ограничиваем использование htaccess, попробуйте перезалить движок или поищите ответ на форумах разработчиков". Тупик, короче) Кто скажет, поможет перезалить движок, а то как-то боязно это первый раз делать?
У меня получилось! Когда я поставила галочку на красивые ссылки, тоже была проблема, ссылки не открывались, а выдавалась ошибка. В своей си-панели хостинга я и впрямь не смогла найти этот присловутый .htaccess А вот когда создала FTP соединение в тотал коммандер, я его увидела. Я тупо нажала на него, потом на F4? этот файл открылся в блокноте. Я скопировала код, который предлагалось вставить, и попросту удалила то, что у меня было и вставила то, что предлагалось. Теперь я тупо закрыла этот блокнот, он мне предложил сохранить, я кликнула окей. Потом предложил закачать на сервер, я - снова "окей". Ну и сработало все, мои красивые ссылки открываются. Буду рада, если смогла кому-нибудь помочь!
Народ, подскажите пожалуйста, можно ли в ссылке убрать Index.php? Поставил в настройках показывать месяц и название, но перед месяцем стоит еще /index.php. Пример: _http://www.имя сайта.ru/index.php/имя ссылки/. Можно ли убрать index.php? Спасибо.
У меня любая красивая ссылка работает: и День и название, и Месяц и название и Числовой, но после названия сайта идет index.php, Потом уж ссылка красивая
я одному знакомому такой вп помогала донастроить: index.php из формата ЧПУ убрала, .htaccess в корень положила и чпу заработали. а вообще вот, тут есть про такие ссылки: http://codex.wordpress.org/Using_Permalinks и кстати, а хостинг не IIS ? Красивые пермалинки под IIS
Гуглил, не нашел? | Личка — для общения, форум — для вопросов. Смертный грех №11 — не прочитать РИДМИ.