Htaccess
Доброго здравия!
После обновления wp до 6.5 wp внес изменения в htaccess.
Получилось дублирование строк.
Подскажите как отключить эту ересь...
Также прошу проверить мой htaccess кто шарит в этих каракулял..
Было..
# BEGIN
ServerSignature Off
Options All -Indexes
<files wp-config.php>
order allow,deny
deny from all
</files>
<files ~ "^.*\.([Hh][Tt][Aa])">
order allow,deny
deny from all
</files>
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /(.*)\ HTTP/ [NC]
RewriteCond %{HTTPS} off [NC]
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,QSA,L]
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} .wp-comments-post\.php*
RewriteCond %{HTTP_REFERER} !.*https://mysite.ru.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule (.*) ^https://%{REMOTE_ADDR}/$ [R=301,L]
<IfModule mod_rewrite.c>
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteRule (.+)/feed /$1 [R=301,L]
RewriteRule (.+)/attachment /$1 [R=301,L]
RewriteRule (.+)/comment-page /$1 [R=301,L]
RewriteRule (.+)/comments /$1 [R=301,L]
RewriteRule (.+)/trackback /$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
RewriteCond %{HTTP_HOST} ^www.mysite\.ru$ [NC]
RewriteRule ^(.*)$ https://mysite.ru/$1 [R=301,L]
# END
Стало тоже самое + то что ниже
...
# END
# BEGIN WordPress
# Директивы (строки) между `BEGIN WordPress` и `END WordPress`
# созданы автоматически и подлежат изменению только через фильтры WordPress.
# Сделанные вручную изменения между этими маркерами будут перезаписаны.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /mysite/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /mysite/index.php [L]
</IfModule>
# END WordPress
Если кому надо как отслеживать..
/* htaccess в виджете админ-панели, в консоли
--------------------------------------------------------------------- */
function htaccess_Widget() {
$logfile = $_SERVER['DOCUMENT_ROOT'] . '/.htaccess'; // Полный пусть до лог файла
echo $logfile;
if( file_exists( $logfile ) ){
$htaccess = file( $logfile );
if( $htaccess ) {
$i = count($htaccess);
if($i!=50) {
trigger_error('htaccess is editing');
echo $i;
} else echo ': )';
}else echo '<p><em>Произошла ошибка чтения htaccess.</em></p>';
} else echo '<p><em>file not found</em></p>';
}
// Добавляем виджет
function htaccess_dashboardWidget(){
wp_add_dashboard_widget( 'htaccess_Widget', 'htaccess file', 'htaccess_Widget' );
}
add_action( 'wp_dashboard_setup', 'htaccess_dashboardWidget' );
Буду рад всем советам )
Спасибо Кама. Случайно через этот хук стер перелинковку, и когда обновил постоянные ссылки, проблема всплыла.
https://wp-kama.ru/hook/mod_rewrite_rules этот хук смотри, через него можно либо ничего не выводить, либо наоборот через него добавить все что тебе нужно в htaccess.