sitio seguido reparar que puede has este esta error enlace donde descargar caducado acceder wordpress bash sed

wordpress - seguido - wp-config.php location



Descargue e inserte salt string dentro de wordpress wp-config.php con Bash (8)

¿Qué hay de usar sed?

cat wp-config.php | sed ''s/old_string/new_string/g'' > wp-config.php

¿Cómo puedo insertar el contenido de la variable $ SALT en un punto específico (línea o cadena) de un archivo como wp-contet.php de wordpress usando el script Bash?

SALT=$(curl -L https://api.wordpress.org/secret-key/1.1/salt/)


No soy un experto en analizar archivos de texto en bash, pero debe eliminar las líneas que definen las cosas que está descargando de la sal de wordpress y luego insertar la variable al final ... algo así como:

#!/bin/sh SALT=$(curl -L https://api.wordpress.org/secret-key/1.1/salt/) STRING=''put your unique phrase here'' printf ''%s/n'' "g/$STRING/d" a "$SALT" . w | ed -s wp-config.php

Bien, ahora está arreglado ... debería buscar dónde se supone que se va la sal y lo reemplazará con la información que se obtiene de https://api.wordpress.org/secret-key/1.1/salt/


¡Creo que tengo este! es un script bash que utiliza solo comandos normalmente disponibles en el símbolo del sistema y lo hace -everything- (suponiendo que httpd es su usuario web) excepto que crea las bases de datos. aqui tienes.

#!/bin/bash # wordpress latest auto-install script, by alienation 24 jan 2013. run as root. # usage: ~/wp-install alien /hsphere/local/home/alien/nettrip.org alien_wpdbname alien_wpdbusername p@sSw0rd # ( wp-install shell-user folder db-name db-user-name db-user-pw ) # download wordpress to temporary area cd /tmp rm -rf tmpwp mkdir tmpwp cd tmpwp wget http://wordpress.org/latest.tar.gz tar -xvzpf latest.tar.gz # copy wordpress to where it will live, and go there, removing index placeholder if there is one mv wordpress/* $2 cd $2 rm index.html # create config from sample, replacing salt example lines with a real salt from online generator grep -A 1 -B 50 ''since 2.6.0'' wp-config-sample.php > wp-config.php wget -O - https://api.wordpress.org/secret-key/1.1/salt/ >> wp-config.php grep -A 50 -B 3 ''Table prefix'' wp-config-sample.php >> wp-config.php # put the appropriate db info in place of placeholders in our new config file replace ''database_name_here'' $3 -- wp-config.php replace ''username_here'' $4 -- wp-config.php replace ''password_here'' $5 -- wp-config.php # change file ownership and permissions according to ideal at http://codex.wordpress.org/Hardening_WordPress#File_Permissions touch .htaccess chown $1:httpd .htaccess chown -R $1:httpd * find . -type d -exec chmod 755 {} /; find . -type f -exec chmod 644 {} /; chmod -R 770 wp-content chmod -R g-w wp-admin wp-includes wp-content/plugins chmod g+w .htaccess # thats it! echo ALL DONE


Esta versión define nuevas claves si ninguna existe, y también reemplaza las claves existentes:

#!/bin/bash find . -name wp-config.php -print | while read line do curl http://api.wordpress.org/secret-key/1.1/salt/ > wp_keys.txt sed -i.bak -e ''/put your unique phrase here/d'' -e / ''/AUTH_KEY/d'' -e ''/SECURE_AUTH_KEY/d'' -e ''/LOGGED_IN_KEY/d'' -e ''/NONCE_KEY/d'' -e / ''/AUTH_SALT/d'' -e ''/SECURE_AUTH_SALT/d'' -e ''/LOGGED_IN_SALT/d'' -e ''/NONCE_SALT/d'' $line cat wp_keys.txt >> $line rm wp_keys.txt done


Si tiene csplit disponible, puede dividir el archivo wp-config.php original a cada lado de las definiciones de sal, descargar nuevas sales, y luego volver a conectar. Esto mantiene las instrucciones PHP define() en la misma ubicación en wp-config.php en lugar de moverlas a una ubicación diferente dentro del archivo:

# Download new salts curl "https://api.wordpress.org/secret-key/1.1/salt/" -o salts # Split wp-config.php into 3 on the first and last definition statements csplit wp-config.php ''/AUTH_KEY/'' ''/NONCE_SALT/+1'' # Recombine the first part, the new salts and the last part cat xx00 salts xx02 > wp-config.php # Tidy up rm salts xx00 xx01 xx02


Me desafiaron con el mismo problema. Aquí está el script que escribí para reemplazar las sales y las claves de las descargadas de WordPress. Puede usarlo en cualquier momento para reemplazarlos si es necesario. Lo ejecuto como sudo, y el script lo prueba. Si usa una cuenta que puede descargar al directorio y realizar actualizaciones en el archivo wp-config.php, puede eliminar esa parte del script.

#!/bin/sh # update-WordPress-Salts: Updates WordPress Salts # written by Wayne Woodward 2017 if [ $# -lt 1 ]; then echo "Usage: update-WordPress-Salts directory" exit fi if [ "$(whoami)" != "root" ]; then echo "Please run as root (sudo)" exit fi WPPATH=$1 # Update the salts in the config file # Download salts from WordPress and save them locally curl http://api.wordpress.org/secret-key/1.1/salt/ > /var/www/$WPPATH/wp-keys.txt # Iterate through each "Saltname" and append 1 to it # For a couple names that may match twice like "AUTH_KEY" adds extra 1s to the end # But that is OK as when this deletes the lines, it uses the same matching pattern # (Smarter people may fix this) for SALTNAME in AUTH_KEY SECURE_AUTH_KEY LOGGED_IN_KEY NONCE_KEY AUTH_SALT SECURE_AUTH_SALT LOGGED_IN_SALT NONCE_SALT do sed -i -e "s/$SALTNAME/${SALTNAME}1/g" /var/www/$WPPATH/wp-config.php done # Find the line that has the updated AUTH_KEY1 name # This is so we can insert the file in the same area line=$(sed -n ''/AUTH_KEY1/{=;q}'' /var/www/$WPPATH/wp-config.php) # Insert the file from the WordPress API that we saved into the configuration sed -i -e "${line}r /var/www/$WPPATH/wp-keys.txt" /var/www/$WPPATH/wp-config.php # Itererate through the old keys and remove them from the file for SALTNAME in AUTH_KEY SECURE_AUTH_KEY LOGGED_IN_KEY NONCE_KEY AUTH_SALT SECURE_AUTH_SALT LOGGED_IN_SALT NONCE_SALT do sed -i -e "/${SALTNAME}1/d" /var/www/$WPPATH/wp-config.php done # Delete the file downloaded from Wordpress rm /var/www/$WPPATH/wp-keys.txt


Construí una CLI simple para eso. Pruébalo. Se llama [WP-Salts-Update-CLI][1] .

WP-Sales-Update-CLI

WPSUCLI descarga nuevas sales de la API de WP y las reemplaza con las de su archivo wp-config.php para cada sitio en su servidor.

⚡️ Instalación

Abra la terminal de línea de comando (prefiero iTerm2) y ejecute el siguiente comando.

bash sudo wget -qO wpsucli https://git.io/vykgu && sudo chmod +x ./wpsucli && sudo install ./wpsucli /usr/local/bin/wpsucli

Este comando realizará las siguientes acciones:

  • Use sudo permisos
  • Use wget para descargar WPSUCLI y wpsucli a wpsucli
  • Hacer el ejecutable wpsucli
  • Instala wpsucli dentro de la wpsucli / usr / local / bin /.

🙌 Uso

Simplemente ejecute wpsucli y actualizará las sales para cada archivo wp-config.php en su servidor o PC.


Este es el script bash que se me ocurrió que funciona en mi servidor Ubuntu. Modifiqué los ejemplos de arriba.

Es un poco de fuerza bruta, ya que solo reemplazará las 8 claves que actualmente se requieren y espera que el servidor devuelva exactamente la misma clave de longitud cada vez. El script funciona bien para mi caso de uso, así que pensé que lo compartiría.

CONFIG_FILE=wp-config.php SALT=$(curl -L https://api.wordpress.org/secret-key/1.1/salt/) SRC="define(''AUTH_KEY''"; DST=$(echo $SALT|cat|grep -o define/(/'AUTH_KEY/'.//{70//}); sed -i "/$SRC/c$DST" $CONFIG_FILE SRC="define(''SECURE_AUTH_KEY''"; DST=$(echo $SALT|cat|grep -o define/(/'SECURE_AUTH_KEY/'.//{70//}); sed -i "/$SRC/c$DST" $CONFIG_FILE SRC="define(''LOGGED_IN_KEY''"; DST=$(echo $SALT|cat|grep -o define/(/'LOGGED_IN_KEY/'.//{70//}); sed -i "/$SRC/c$DST" $CONFIG_FILE SRC="define(''NONCE_KEY''"; DST=$(echo $SALT|cat|grep -o define/(/'NONCE_KEY/'.//{70//}); sed -i "/$SRC/c$DST" $CONFIG_FILE SRC="define(''AUTH_SALT''"; DST=$(echo $SALT|cat|grep -o define/(/'AUTH_SALT/'.//{70//}); sed -i "/$SRC/c$DST" $CONFIG_FILE SRC="define(''SECURE_AUTH_SALT''"; DST=$(echo $SALT|cat|grep -o define/(/'SECURE_AUTH_SALT/'.//{70//}); sed -i "/$SRC/c$DST" $CONFIG_FILE SRC="define(''LOGGED_IN_SALT''"; DST=$(echo $SALT|cat|grep -o define/(/'LOGGED_IN_SALT/'.//{70//}); sed -i "/$SRC/c$DST" $CONFIG_FILE SRC="define(''NONCE_SALT''"; DST=$(echo $SALT|cat|grep -o define/(/'NONCE_SALT/'.//{70//}); sed -i "/$SRC/c$DST" $CONFIG_FILE