Jump to content
  • 0

.sh или php?


Николя223
 Share

Question

Возникла проблемма, моих знаний не хватает чтобы решить её рационально

Есть 400 сайтов на сервере.

в одном из них - лежит скрипт .sh, его используем для разворотки новых доменов

 

Нужно пройтись по всем сайтам(список с ними получить не сложно, так как все в одной папке лежат)

И подменить файлик с php.mailer-om (Так как нужно чтобы в нем был прописан SSL и новый порт. Впринципе порт можно во всех БД переписать, но SSL только заменой этого файла)

Как дать доступ для PHP ко всем сайтам PHP скрипту, который лежит в этом главном сайте

Или же, как организовать проход по всем сайтам(или по массиву с названием сайтов) и определить  лежит ли на сайте phpMailer в нужном месте(большинство на одной CMS) из скрипта .SH

А также возможен вариант из консоли)

Edited by Николя223
Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

Linux - просто найти и заменить это просто))

Нужно пройтись по всем сайтам и определить находится он по нужному пути в каждом из них или нет 

на php - раз плюнуть..

в .sh помоему C используется, я с ним пока не очень,   Распаковать могу, а вот аналоги существования нужной папки или файла - не знаю. Мануалы читаю


блин - или просто прошерстить папку /var/www/ на поиск этих  файлов и копировать если они будут найдены


find /var/www/.../ -iname "имя" -exec cp {}  /newFile.php  \;

так может быть. попробую

Edited by Николя223
Link to comment
Share on other sites

  • 0
find /var/www/.../ -iname "имя" -exec cp {}  /newFile.php  \;

 

Собственно такое я хотел предложить. Команда в CentOS:

find /папка_где_лежать_папки_сайтов/ -name 'шаблон_имени_неправильного_файла' -exec cp /правильный_файл '{}' ';'
  • Like 1
Link to comment
Share on other sites

  • 0
Нужно пройтись по всем сайтам и определить находится он по нужному пути в каждом из них или нет 

 

Если нужно заменять только если файл находится в определенной папке, то можно попробовать такое:

find /папка_где_лежать_папки_сайтов/ -name 'шаблон_имени_неправильного_файла' | grep 'шаблон_пути' | xargs  cp /правильный_файл 
Link to comment
Share on other sites

  • 0

find /var/www/.../core/includes/PHPMailer/ -iname "class.phpmailer.php" -exec cp  '/newFile.php' {}   \;

 

find /var/www/*/core/includes/PHPMailer/ -iname "class.phpmailer.php" -exec cp  '/newFile.php' {}   \;

сэнкс. путем сложения, думаю так должно получиться. на всякий случай - ночью буду пробовать

Link to comment
Share on other sites

  • 0

Проще от не знания - не всегда правильно)))  в итоге сделал одной этой командой. вот это просто. 


И - я изначально так и хотел сделать, но не понял как заставить скрипт работать на всех сайтах, а не только на том, кому пренадлежит

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy