LINUX.ORG.RU

Сообщения loopergood

 

Помогите настроить IPv6 через брокера

Всем привет! Не получается настроить IPv6. Использую tunnelbroker.net

После создания туннеля у брокера, нашёл там же инструкцию для Ubuntu:

auto he-ipv6
iface he-ipv6 inet6 v4tunnel
        address <IPv6>
        netmask 64
        endpoint <server ip>
        local <my local ip>
        ttl 255
        gateway <IPv6>

Там уже были прописаны все нужные IP, включая IPv6. Добавил данную запись в /etc/network/interfaces и... ничего. Перезагрузил систему. И тоже ничего не работает. При попытке пинга гугла, пишет:

Destination unreachable: Address unreachable

Что я делаю не так?

 ,

loopergood
()

Создать файл и тут же его открыть в Sublime

Всех с новым годом!

Есть вот такая команда:

hugo new posts/my-first-post.md

Будет создан markdown файл для статического движка Hugo.

Дело в том, что в директории «posts», много таких файлов и находить новые - сложно. Как бы так дописать команду, чтобы новый файл открывался сразу, например в Sublime Text?

Т.е. что-то вроде:

hugo new posts/my-first-post.md | sublime

Так конечно не сработает. Но вы поняли суть?

Можно как-то так:

hugo new posts/my-first-post.md && sublime posts/my-first-post.md

Но так не совсем удобно, прописывать два раза название файла. Может кто-то подскажет решение, чтобы прописывать один раз название файла и происходила магия?)

 , , , ,

loopergood
()

Массово добавить блок в html-файлы

Имеется директория, где лежат html файлы, а так же ещё внутри есть директории с ними. Их там тысячи файлов и папок.

Как бы можно добавить новый div-блок с содержимым в каждый html-файл, допустим после тега <body>?

 , ,

loopergood
()

Apache говорит, что 404, а файлы есть.

Нужно было перенести сайт на Drupal в статический вид.

Сделал таким способом:

wget -q --mirror -p --adjust-extension -e robots=off --base=./ -k -P ./ http://site.com

Залил файлы на локальный XAMPP, прописал адрес сайта в hosts. Всё работает. Ок.

Значит можно выкладывать на боевой сервер. Делаем архив с сайтом в .zip, заливаем на сервер, распаковываем. Открываем сайт, а там... загружается страница только с текстом и картинками, никакими css стилями и не пахнет.

Залезаем в консоль браузера и видим кучу ошибок на js, css файлы, которые не загружаются. Ок. Копируем ссылки вставляем в браузер и пробуем открыть напрямую и тут сюрприз! Апач пишет, что 404 файл не найден. Ладно. Лезем на сервер и проверяем файлы - всё на месте.

Проверяем права на папках - 755, на файлах - 644. Что это за цирк с конями и как это исправить?

.htaccess был скопирован друпаловский:

#
# Apache/PHP/Drupal settings:
#

RewriteEngine on

RewriteCond %{HTTP_HOST} ^site\.com$ [NC]
RewriteRule ^(.*)$ http://www.site.com/$1 [R=301,L]

# Protect files and directories from prying eyes.
<FilesMatch "\.(engine|inc|info|install|make|module|profile|test|po|sh|.*sql|theme|tpl(\.php)?|xtmpl)(~|\.sw[op]|\.bak|\.orig|\.save)?$|^(\..*|Entries.*|Repository|Root|Tag|Template)$|^#.*#$|\.php(~|\.sw[op]|\.bak|\.orig\.save)$">
  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 Drupal handle any 404 errors.
ErrorDocument 404 /index.php

# Set the default handler.
DirectoryIndex index.php index.html index.htm

# Override PHP settings that cannot be changed at runtime. See
# sites/default/default.settings.php and drupal_environment_initialize() in
# includes/bootstrap.inc for settings that can be changed at runtime.

# PHP 5, Apache 1 and 2.
<IfModule mod_php5.c>
  php_flag magic_quotes_gpc                 off
  php_flag magic_quotes_sybase              off
  php_flag register_globals                 off
  php_flag session.auto_start               off
  php_value mbstring.http_input             pass
  php_value mbstring.http_output            pass
  php_flag mbstring.encoding_translation    off
</IfModule>

# 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

  <FilesMatch \.php$>
    # Do not allow PHP scripts to be cached unless they explicitly send cache
    # headers themselves. Otherwise all scripts would have to overwrite the
    # headers set by mod_expires if they want another caching behavior. This may
    # fail if an error occurs early in the bootstrap process, and it may cause
    # problems if a non-Drupal PHP file is installed in a subdirectory.
    ExpiresActive Off
  </FilesMatch>
</IfModule>

# Various rewrite rules.
<IfModule mod_rewrite.c>
  RewriteEngine on

  # Set "protossl" to "s" if we were accessed via https://.  This is used later
  # if you enable "www." stripping or enforcement, in order to ensure that
  # you don't bounce between http and https.
  RewriteRule ^ - [E=protossl]
  RewriteCond %{HTTPS} on
  RewriteRule ^ - [E=protossl:s]

  # Make sure Authorization HTTP header is available to PHP
  # even when running as CGI or FastCGI.
  RewriteRule ^ - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

  RewriteRule "(^|/)\." - [F]

  # Pass all requests not referring directly to files in the filesystem to
  # index.php. Clean URLs are handled in drupal_environment_initialize().
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_URI} !=/favicon.ico
  RewriteRule ^ index.php [L]

  # Rules to correctly serve gzip compressed CSS and JS files.
  # Requires both mod_rewrite and mod_headers to be enabled.
  <IfModule mod_headers.c>
    # Serve gzip compressed CSS files if they exist and the client accepts gzip.
    RewriteCond %{HTTP:Accept-encoding} gzip
    RewriteCond %{REQUEST_FILENAME}\.gz -s
    RewriteRule ^(.*)\.css $1\.css\.gz [QSA]

    # Serve gzip compressed JS files if they exist and the client accepts gzip.
    RewriteCond %{HTTP:Accept-encoding} gzip
    RewriteCond %{REQUEST_FILENAME}\.gz -s
    RewriteRule ^(.*)\.js $1\.js\.gz [QSA]

    # Serve correct content types, and prevent mod_deflate double gzip.
    RewriteRule \.css\.gz$ - [T=text/css,E=no-gzip:1]
    RewriteRule \.js\.gz$ - [T=text/javascript,E=no-gzip:1]

    <FilesMatch "(\.js\.gz|\.css\.gz)$">
      # Serve correct encoding type.
      Header set Content-Encoding gzip
      # Force proxies to cache gzipped & non-gzipped css/js files separately.
      Header append Vary Accept-Encoding
    </FilesMatch>
  </IfModule>
</IfModule>

Если удалить .htaccess, ничего не меняется.

 , ,

loopergood
()

Возможно, опять помогите с sed

Всем привет!

Помогите написать простенький скрипт. Имеется директория, где куча html-файлов и внутри ещё директории, в которых тоже есть html-файлы. В их содержимом, есть url изображений. Я хочу их почистить от лишних символов, т.е. некоторые url имеют вид:

<img src="image.jpg?itok=6m2anSE2">

Хочу получить:

<img src="image.jpg">

И так с каждым url-изображений в каждом html файле.

Я так понимаю, что нужно использовать grep, sed и регулярные выражения?

 , , ,

loopergood
()

Обновил пакеты - сломалась Ubuntu

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

Ubuntu 16 lts, nvidia optimus, Unity.

Может ядро обновилось и nvidia чудит? Но почему тогда загружается обоина? Подскажите, куда копать, не хочется остаться без рабочей системы.

UPD: После чистой переустановки системы и обновления пакетов - опять после перезагрузки, показывается только обоина и сообщение о системной ошибке. По всей видимости, это какой-то баг в свежих обновлениях. Вот вам и LTS.

 ,

loopergood
()

Доступ к API и работа с API

Всем привет!

Помогите получить доступ к api beatport: https://oauth-api.beatport.com/

Не понимаю, как получить заветные key, чтобы можно было заиметь доступ.

Ещё вопрос, как правильно использовать api? С клиента обращаться к api? Или лучше обращаться с бекенда, сохранять у себя инфу и отдавать её клиенту?

 

loopergood
()

Помогите с настройкой nginx

Потребовалось поднять сервер nginx для нескольких сайтов на wordpress. Сейчас ещё php7 появился, возможно с ним дело. С предыдущими версиями php, проблем не было. Хотя, это может я такой криворукий.

В общем, вместо второго сайта у меня отдаются файлы.

Конфиг первого сайта, он без домена(чисто на ip) и всё работает нормально:

server {
  listen [::]:80;
  listen 80;

  server_name my_IP/site1;

  access_log /var/log/nginx/site1.access.log;
  error_log /var/log/nginx/site1.error.log;

  root /srv/site1;
  index index.html index.htm index.php;

  location /site1/ {
    index index.php;
    try_files $uri $uri/ /site1/index.php?$args;
  }

  charset utf-8;

  rewrite /wp-admin$ $scheme://$host$uri/ permanent;

  error_page 404 /404.html;
  
  location = /favicon.ico { log_not_found off; access_log off; }
  location = /robots.txt { log_not_found off; access_log off; allow all; }
  location ~* \.(css|gif|ico|jpeg|jpg|js|png)$ {
  expires max;
  log_not_found off;
  }


  location ~ /\. {
          deny all;
  }

  location ~* /(?:uploads|files)/.*\.php$ {
          deny all;
  }

  

}

Конфиг второго сайта. Он практически похожий на первый, но отдаются файлы, вместо открытия сайта.

server {
  listen [::]:80;
  listen 80;

  server_name site2.com;

  access_log /var/log/nginx/site2.com.access.log;
  error_log /var/log/nginx/site2.com.error.log;

  root /srv/site2.com;

  location / {
    index index.php;
    try_files $uri $uri/ /index.php?$args;
  }


  charset utf-8;

  rewrite /wp-admin$ $scheme://$host$uri/ permanent;

  error_page 404 /404.html;

  location = /favicon.ico { log_not_found off; access_log off; }
  location = /robots.txt { log_not_found off; access_log off; allow all; }
  location ~* \.(css|gif|ico|jpeg|jpg|js|png)$ {
  expires max;
  log_not_found off;
  }


  location ~ /\. {
          deny all;
  }

  location ~* /(?:uploads|files)/.*\.php$ {
          deny all;
  }


}

Конфиг default:

server {
	listen 80 default_server;
	listen [::]:80 default_server;

	root /srv;

	# Add index.php to the list if you are using PHP
	index index.php index.html index.htm index.nginx-debian.html;

	server_name _;

	location / {
		# First attempt to serve request as file, then
		# as directory, then fall back to displaying a 404.
		try_files $uri $uri/ =404;
	}


        #Lets Encrypt
        location ~ /.well-known {
                allow all;
        }

        location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php7.0-fpm.sock;
        }

        location ~ /\.ht {
        deny all;
        }
        
}

nginx.conf не трогал, по умолчанию. php-fpm - тоже ничего не трогал после установки.

 , ,

loopergood
()

Помогите мне совладать с sed, а может мне нужен не он?

Есть файл плэйлиста - допустим untitled.pls

Содержимое, что-то вроде такого:

[playlist]
NumberOfEntries=13
File1=/media/D/music/Tunguska/VA - Tunguska Electronic Music Society - Siberian Jungle vol.2 - 2011/01 CHOOGA - I Remember All.mp3
File2=/media/D/music/Tunguska/VA - Tunguska Electronic Music Society - Siberian Jungle vol.2 - 2011/02 Susanin - Rain.mp3
File3=/media/D/music/Tunguska/VA - Tunguska Electronic Music Society - Siberian Jungle vol.2 - 2011/03 Seldome - Matvey.mp3
File4=/media/D/music/Tunguska/VA - Tunguska Electronic Music Society - Siberian Jungle vol.2 - 2011/04 U-dahn - Cray.mp3
File5=/media/D/music/Tunguska/VA - Tunguska Electronic Music Society - Siberian Jungle vol.2 - 2011/05 DJ DED - Autumn is Back.mp3
File6=/media/D/music/Tunguska/VA - Tunguska Electronic Music Society - Siberian Jungle vol.2 - 2011/06 N-box - Beautiful Moments.mp3
File7=/media/D/music/Tunguska/VA - Tunguska Electronic Music Society - Siberian Jungle vol.2 - 2011/07 Celestial Spirit - Mescalito.mp3
File8=/media/D/music/Tunguska/VA - Tunguska Electronic Music Society - Siberian Jungle vol.2 - 2011/08 DJ DED - Just Funk.mp3
File9=/media/D/music/Tunguska/VA - Tunguska Electronic Music Society - Siberian Jungle vol.2 - 2011/09 Smoki Jay - Blueberry.mp3
File10=/media/D/music/Tunguska/VA - Tunguska Electronic Music Society - Siberian Jungle vol.2 - 2011/10 Seldome - Mies.N.mp3
File11=/media/D/music/Tunguska/VA - Tunguska Electronic Music Society - Siberian Jungle vol.2 - 2011/11 PIANOCHOCOLATE - Not Too Late.mp3
File12=/media/D/music/Tunguska/VA - Tunguska Electronic Music Society - Siberian Jungle vol.2 - 2011/12 Peter Zanegin - Sun Force.mp3
File13=/media/D/music/Tunguska/VA - Tunguska Electronic Music Society - Siberian Jungle vol.2 - 2011/13 N-box - Fallen Angel.mp3

Мне хочется получать на выходе только названия треков, в таком виде:

01 CHOOGA - I Remember All
02 Susanin - Rain
03 Seldome - Matvey
04 U-dahn - Cray
05 DJ DED - Autumn is Back
06 N-box - Beautiful Moments
07 Celestial Spirit - Mescalito
08 DJ DED - Just Funk
09 Smoki Jay - Blueberry
10 Seldome - Mies.N
11 PIANOCHOCOLATE - Not Too Late
12 Peter Zanegin - Sun Force
13 N-box - Fallen Angel

Погуглив пришёл к такому:

cat untitled.pls | cut -c 65-
Удаляются первые 65 символов до названий треков. Это уже хорошо. Но блин! Если я захочу проделать это с другим плэйлистом, там придёться опять подбирать сколько символов удалить в начале, т.к. изменится название папки и т.д. Здесь явно нужно что-то по круче, чем просто cut.

Погуглил примеры с sed. Ничего не нашёл сложнее, как удалить пробелы, поставить пробелы, удалить строку и т.д. Здесь явно нужны регулярные выражения(ох и не дружу я с ними, на википедии всё понятно, но как берусь за них - затык), либо ещё можно как-то удалять символы до последнего знака «/» в строке и потом ещё ".mp3" в конце. Мне ничего особенного ненужно, только вывести в консоли только названия треков(без расширения .mp3, .wav и т.д.) из файла плэйлиста.

 

loopergood
()

Deadbeef: сломался внешний вид

Захотелось мне анализатор спектра вывести. Через гугление нашёл, что нужно включить режим дизайна и в контекстном меню появятся нужные пункты.

Весь плейлист стал подсвечиваться синим цветом при этом. Уже тогда я начал подозревать, что случится что-то ужасное. И не прогадал! Как теперь вернуть всё назад? У меня сейчас там тупо окно с серым фоном. Это мне теперь вручную нужно делать сетку и вставлять все кнопки, плэйлисты и т.д.? Это же ад. Ну вот кто знал? Нефига не юзер френдли. В справке про такую фигню не написано ничего.

 , ,

loopergood
()

Nginx: При заходе на сайт, происходит редирект на другой сайт сервера.

Всем привет! У меня такая проблема - на сервере nginx был размещён один сайт. Понадобилось добавить ещё один, создал для него конфиг, но при открытии нового сайта, почему-то открывается второй сайт, а именно - происходит тупо редирект с одного домена на другой.

Конфиг первого сайта(почистил из него настройки https, логов):

server {
    listen 80;
    listen [::]:80;

    server_name site1.com;
    return 301 https://site1.com$request_uri;

}

server {
    listen 443 ssl http2;
    server_name site1.com;

    location  / {

        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_set_header X-NginX-Proxy true;

        proxy_pass http://127.0.0.1:4577/;
        proxy_redirect off;

        # Socket.IO Support
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";

    }

}

Конфиг второго сайта, тоже почистил от настроек логов и т.д. чтобы меньше текста было:

server {
    listen *:80;

    server_name site2.com www.site2.com;

    root /home/srv/site2.com;
    index index.html index.htm index.php;

location ~* ^.+\.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|rss|atom|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ {
       access_log off; log_not_found off; expires max;
}

location = /favicon.ico {
        log_not_found off;
        access_log off;
}
location = /robots.txt {
        allow all;
        log_not_found off;
        access_log off;
}

location ~ /\. {
        deny all;
}
location ~* /(?:uploads|files)/.*\.php$ {
        deny all;
}



    location ^~ / {

    }

}
Вроде всё нормально. Но при заходе на адрес site2.com, кидает на site1.com

Что я делаю не так?

 ,

loopergood
()

Подскажите с wordpress

Всем привет! Столкнулся с проблемой в Wordpress.

Хочу вывести список пользователей, но не всех, а только тех, у кого стоит галочка в произвольном поле в профиле.

Я нашёл на просторах сети код, который позволяет вывести список пользователей, он работает и подходит мне, но не получается его модифицировать с учётом моих потребностей.

Вот данный код: http://pastebin.com/MRX04PMC

Я так понял, что можно сделать нужные мне изменения, путём внесения дополнительных параметров в функцию «get_users()»

Судя по документации: https://codex.wordpress.org/Function_Reference/get_users

Я добавляю meta_key, который у меня называется «test», добавляю значение meta_value, которое равно у меня «1» и добавляю meta_compare, где ставим «=». Если я правильно понял, данная модификация выведет пользователей со значением 1 в произвольном поле профиля пользователя.

Но не получается. Вообще всё перестаёт выводиться: http://pastebin.com/90CYx0wq

Подскажите пожалуйста, что я делаю не так. Или как по другому ещё можно вывести только пользователей со значением 1 в произвольном поле test в профиле?

P.S.: Произвольные поля в профиль добавлял через плагин Types.

 , ,

loopergood
()

RSS подписка на новые темы