Tech blog

Star InactiveStar InactiveStar InactiveStar InactiveStar Inactive

/images/stories/2020/confuse-the-hell-out-of-the-spiders_thumb.png

I use CentOS Web Panel (CWP) and want to redirect my secondary parked domain to my main domain both http and https using nginx. Needs some tricks.

So I have my main domain gruz.ml and a secondary one gruz.ml. I want when I visit http://gruz.ml/whatever-path , https://gruz.ml/whatever-path I'm redirected to https://gruz.ml/whatever-path

The most obvoious way is to create a domain in CWP and link it to an existing CWP user public_html folder. And this works, but demands some additional steps. Otherwise there you don't redirect to the main domain, but have your web-site accessible under 2 different domains.

Star InactiveStar InactiveStar InactiveStar InactiveStar Inactive

b_300_0_16777215_00_http___ximage.ml_x_spidersem.jpg_qn.jpeg

CentOS Web Panel has an option of using nginx as web-server, but out of the box Search Engine Friendly links don't work for Joomla.

So here are the steps:

  1. Select nginx as the web-server
  2. Create a custom template from terminal or via CWP GUI
  3. Apply the template to the needed domains

Star InactiveStar InactiveStar InactiveStar InactiveStar Inactive

spider tenancyInstalling Laravel tenancy with Voyager can be very tricky.

Here is a repo with a tutorial how to install multitenancy in Larave with Voyager

https://github.com/gruz/multi-tenancy-voyager-tries

I hope at least some people will find it useful.

Star InactiveStar InactiveStar InactiveStar InactiveStar Inactive

spider web with water beads network dewdrop1We develop a web-site using docker. Well, using docker-compose. So we have it working at our localhosts per team member, but we need run the docker at a real server under a real domain.

My server uses CentOS and CWP(CentOS Web Panel, Pro version). Usually a create a user, domain/subdomain/database. Then upload my web-site files, edit database credentials in the web-site config etc.

Docker wokrs in other way. So to run my docker-based project at my CWP-powered server I did the following.

The idea is easy. Run docker (I did via terminal) and in CWP assign proxy to my domain and point it to the docker web-server port.

User Rating: 5 / 5

Star ActiveStar ActiveStar ActiveStar ActiveStar Active

Problem: Need to quickly translate phrase avoiding opening google translate, copy-pasting etc.

I need often to translate a phrase from one language to another. Currently I often need to translate English to German. KDE Klipper is a perfect tool to do it from keyboard quickly, without opening google translate in browser. There is still some delay while requesting a remote server, but it's much quicker the opening a browser tab and doing a number of other copy-paste-click-task-switch tasks.

Translation from to Klipper demo

Star InactiveStar InactiveStar InactiveStar InactiveStar Inactive

spider skull on backI switch my keyboard layout in my OpenSuse linux via Caps Lock. It's much more convenient then any other key combination. JIC, to make Caps Lock work as Caps Lock I use Shift+Caps Lock.

Suddenly in KDE apps (e.g. system settings or plasma desktop widgets, but not in Firefox or VS code) pressing Caps Lock started to work as Undo (like if I was pressing ctrl+z).

Solution was to edit ~/.config/kdeglobals .

On some reason the undo shortcut looked like

[Shortcuts]
Undo=Ctrl+Z;\s

I removed \s to make it look like

[Shortcuts]
Undo=Ctrl+Z;

Saved and reloaded KDE. It works!

Star InactiveStar InactiveStar InactiveStar InactiveStar Inactive

gWLC3AeNBmmgElasticPress is a WordPress plugin, which transforms WP queries into ElasticSearch queries. By default it treats the content as English. I needed to make it work with German special characters like ü => ue. So words gerüstbauer, gerustbauer and geruestbauer would give the same results.

After some investigation I added the following hooks to alter the ElasticSearch index setting. After adding the hooks, ElasticPress should run reindex.

Star InactiveStar InactiveStar InactiveStar InactiveStar Inactive

Disable XDebug for Code Sniffer but enable for CLII scripts I use VS Code for php development. I use XDebug, but out of the box it catches phpcs calls on linting documents, making impossible to use xdebug due to numerios interruptions.

The solution was to disable XDebug globally and enable per virtual host.

Globally it can be disabled in php.ini (or another ini file for php, in my case of OpenSuse I use custom file /etc/php7/conf.d/xdebug.ini) and then enable it in .htaccess for needed hosts or for all of them.

So in my php .ini file I have directives

xdebug.remote_autostart = 1
xdebug.remote_enable = off

And in my .htaccess file I have directive

php_flag xdebug.remote_enable on

This worked till I needed to debug a php command line script with XDebug in my VS Code. The solution was to run php with a proper key like

php -d xdebug.remote_enable=1 script.php

And finally, not to forget a key, I created a shortcut script ~/bin/pd containing code

#!/bin/bash
set -o xtrace
php -d xdebug.remote_enable=1 $@

So to run a CLI script and let XDebug listen to I run command pd script.php

P.S. set -o xtrace line is not needed in general. I use it to debug bash scripts.

User Rating: 5 / 5

Star ActiveStar ActiveStar ActiveStar ActiveStar Active

Crazy tasty spiderI had recently to switch from geany code editor to visual studio code (further VS Code). I had my geany setup to use joomla coding standards for my code formatting. I used phpcs to inform me on problems. I didn't know how to use php-cs-fixer to automatically fix issues before and I'd like to add this function.

Since I code not only for Joomla, I need to use PSR2 coding standards for non-joomla code and to use PSR2 for other PHP projects.

For example in PSR2 coding standard a statement should look like this

if (true) {
    echo "yes';
}

In Joomla, the brace must be on the new line.

if (true)
{
    echo "yes';
}

The solution was rather tricky for me. So I write this note also for myself for later reference. I had to install somethings globally, system-wide, and some only per joomla workspace (joomla installation folder where I develop my extensions). I use OpenSuSE linux, but this would not make much difference to apply the steps for another OS.

Star InactiveStar InactiveStar InactiveStar InactiveStar Inactive

Image-missing.svgMy Klipper clipboard manager refused to open on keyboard shortcut (I use Ctrl+`) in LXQT. The problem was, that my LXQT local is in Ukrainian, but shortcut is set in English.

The strange behavior was also because in global shortcut manager, when setting a keyboard shortcut was not possibel. The old ones were working.

After several hour of googling and experiments I have found out the global shortcuts must be selected when my LXQT local and current keyboard input language are the same.

So since my local is Ukrainian, I had to switch to Ukrainian input language and then assign shortcuts.

The shortcuts fire needed actions work with any active input language.

Subcategories

General Joomla FAQ based on own experience.

Some linux tips just not to forget.

FaLang translation system by Faboba
Електронна бібліотека «Exlibris»: історичні дослідження, мемуаристика, публіцистика, художня література Українська етнографія: книги, курси лекцій, статті й матеріали, мапи, фотоальбоми, веб-ресурси Правителі України: портрети, життєписи, матеріали Твори Адріана Кащенка: романтика козацьких часів Народна війна 1917-1932

See a typo?

Select the text block and press

CTRL+Enter

Comments

  • NotificationAry - get emails on Joomla content is submitted, added or changed

    Berndi Berndi 30.06.2019 11:45
    The fields %TO_NAME% and %TO_USERNAME% are empty

    Read more...

     
  • NotificationAry - get emails on Joomla content is submitted, added or changed

    Berndi Berndi 30.06.2019 11:43
    My fault, I made it

    Read more...

     
  • NotificationAry - get emails on Joomla content is submitted, added or changed

    Berndi Berndi 30.06.2019 10:46
    I did. Now I'm asking me how to put the surename into the email... :-|

    Read more...

     
  • NavigationAry - navigate between Joomla menu items like between articles using "prev - next"

    Berndi Berndi 29.06.2019 15:59
    I also miss content in %TO_NAME%

    Read more...

     
  • NotificationAry - get emails on Joomla content is submitted, added or changed

    Berndi Berndi 29.06.2019 15:15
    Hi gruz, I have the problem, that when I use the %AUTHOR% tag, the plugin dosen't send the author ...

    Read more...