ਲੇਖ ਡਾਇਰੈਕਟਰੀ
ਜਦੋਂ ਮੈਂ ਆਮ ਵਾਂਗ ਵਰਡਪ੍ਰੈਸ ਐਡਮਿਨ ਪੈਨਲ ਖੋਲ੍ਹਿਆ , ਤਾਂ ਮੈਂ ਬੈਕਅੱਪ ਲੌਗਸ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਤਿਆਰ ਸੀ।
ਫਿਰ, ਮੈਂ ਪੀਲੇ ਰੰਗਾਂ ਦਾ ਇੱਕ ਝੁੰਡ ਦੇਖਿਆ।
ਚੇਤਾਵਨੀ, ਚੇਤਾਵਨੀ, ਅਤੇ ਹੋਰ ਚੇਤਾਵਨੀ।
警告: is_readable(): open_basedir restriction in effect. File(/home/admin/.aws/config) is not within the allowed path(s): (...)
ਬੈਕਅੱਪ ਬਿਨਾਂ ਕਿਸੇ ਰੁਕਾਵਟ ਦੇ ਪੂਰਾ ਹੋਇਆ, ਪਰ ਸਟੇਟਸ ਬਾਰ ਪੂਰੀ ਤਰ੍ਹਾਂ ਪੀਲਾ ਸੀ, ਜਿਸਨੂੰ ਦੇਖਣਾ ਸੱਚਮੁੱਚ ਤੰਗ ਕਰਨ ਵਾਲਾ ਸੀ।
ਕੀ ਤੁਸੀਂ ਉਸ ਭਾਵਨਾ ਨੂੰ ਜਾਣਦੇ ਹੋ? ਇਹ ਇਸ ਤਰ੍ਹਾਂ ਹੈ ਜਿਵੇਂ ਤੁਸੀਂ ਇੱਕ PR ਜਮ੍ਹਾ ਕਰਦੇ ਹੋ, ਸਾਰੇ CI ਹਰੇ ਹੁੰਦੇ ਹਨ ਪਰ ਇੱਕ ਲਿੰਟ ਚੇਤਾਵਨੀ ਹੁੰਦੀ ਹੈ। ਤੁਸੀਂ ਜਾਣਦੇ ਹੋ ਕਿ ਇਹ ਓਪਰੇਸ਼ਨ ਨੂੰ ਪ੍ਰਭਾਵਤ ਨਹੀਂ ਕਰੇਗਾ, ਪਰ ਤੁਸੀਂ ਫਿਰ ਵੀ ਬੇਆਰਾਮ ਮਹਿਸੂਸ ਕਰਦੇ ਹੋ।
ਮੈਂ ਇੱਕ ਪਲ ਲਈ ਇਸ ਬਾਰੇ ਸੋਚਿਆ।
ਕੀ ਇਸ ਸਮੱਸਿਆ ਦਾ ਪੂਰੀ ਤਰ੍ਹਾਂ ਹੱਲ ਹੋ ਸਕਦਾ ਹੈ?

BackWPup ਚੇਤਾਵਨੀ ਦਾ ਅਸਲ ਕਾਰਨ: AWS SDK ਨੇ open_basedir ਸੀਮਾ ਨੂੰ ਚਾਲੂ ਕੀਤਾ।
ਇਮਾਨਦਾਰੀ ਨਾਲ, ਪਹਿਲਾਂ ਮੈਨੂੰ ਲੱਗਿਆ ਕਿ ਇਹ ਬੈਕਅੱਪ ਪਲੱਗਇਨ BackWPup ਨਾਲ ਇੱਕ ਸਮੱਸਿਆ ਹੈ, ਕਿਉਂਕਿ ਚੇਤਾਵਨੀ ਇਸਦੇ ਲੌਗਸ ਵਿੱਚ ਦਿਖਾਈ ਦਿੱਤੀ ਸੀ।
ਪਰ ਧਿਆਨ ਨਾਲ ਜਾਂਚ ਕਰਨ 'ਤੇ, ਕੁਝ ਗਲਤ ਸੀ।
ਚੇਤਾਵਨੀ ਵਿੱਚ ਇੱਕ ਰਸਤੇ ਦਾ ਜ਼ਿਕਰ ਸੀ।/home/admin/.aws/configਇਹ AWS SDK ਹੈ ਜੋ ਸ਼ੁਰੂਆਤੀਕਰਨ ਦੌਰਾਨ ਮੌਜੂਦਾ ਉਪਭੋਗਤਾ ਦੀ ਡਿਫੌਲਟ AWS ਸੰਰਚਨਾ ਡਾਇਰੈਕਟਰੀ ਨੂੰ ਆਪਣੇ ਆਪ ਲੱਭਦਾ ਹੈ।
ਇਹ ਥੋੜ੍ਹਾ ਗੁੰਝਲਦਾਰ ਲੱਗਦਾ ਹੈ, ਹੈ ਨਾ?
ਅਸਲ ਵਿੱਚ, ਇਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਜੇਕਰ ਤੁਸੀਂ ਵਰਡਪ੍ਰੈਸ ਵਿੱਚ AWS-ਸਬੰਧਤ ਪਲੱਗਇਨ ਸਥਾਪਤ ਕਰਦੇ ਹੋ, ਜਿਵੇਂ ਕਿ S3 ਸਟੋਰੇਜ ਜਾਂ CloudFront, ਤਾਂ ਇਹ ਸਾਰੇ ਪਲੱਗਇਨ ਆਪਣੇ ਮੂਲ ਵਿੱਚ AWS SDK ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਨ। ਜਦੋਂ AWS SDK ਸ਼ੁਰੂ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਇਹ AWS SDK ਇੰਸਟਾਲੇਸ਼ਨ ਟੂਲਸ ਲਈ ਤੁਹਾਡੀ ਹੋਮ ਡਾਇਰੈਕਟਰੀ ਦੀ ਆਪਣੇ ਆਪ ਜਾਂਚ ਕਰੇਗਾ।.awsਇਸ ਫੋਲਡਰ ਵਿੱਚ ਕੌਂਫਿਗਰੇਸ਼ਨ ਫਾਈਲਾਂ ਅਤੇ ਪ੍ਰਮਾਣ ਪੱਤਰ ਹਨ।
ਹਾਲਾਂਕਿ, ਸੁਰੱਖਿਆ ਕਾਰਨਾਂ ਕਰਕੇ, PHP ਸਰਵਰ ਨੇ ਇੱਕ... ਖੋਲ੍ਹਿਆ।open_basedirਇਹ ਚੀਜ਼ ਅਸਲ ਵਿੱਚ ਸਰਵਰ 'ਤੇ ਇੱਕ ਖੇਤਰ ਨੂੰ ਨਿਸ਼ਾਨਬੱਧ ਕਰਨ ਅਤੇ PHP ਨੂੰ ਦੱਸਣ ਵਰਗੀ ਹੈ ਕਿ ਤੁਸੀਂ ਸਿਰਫ਼ ਇਸ ਖੇਤਰ ਦੇ ਅੰਦਰ ਹੀ ਘੁੰਮ ਸਕਦੇ ਹੋ ਅਤੇ ਇੱਧਰ-ਉੱਧਰ ਨਹੀਂ ਘੁੰਮ ਸਕਦੇ।
/tmpਡਾਇਰੈਕਟਰੀ ਵਾਈਟਲਿਸਟ ਵਿੱਚ ਹੈ, ਵੈੱਬਸਾਈਟ ਡਾਇਰੈਕਟਰੀ ਵਾਈਟਲਿਸਟ ਵਿੱਚ ਹੈ, ਪਰ ਤੁਹਾਡੀ ਡਾਇਰੈਕਟਰੀ, ਮਾਫ਼ ਕਰਨਾ, ਨਹੀਂ ਹੈ।
ਜਦੋਂ AWS SDK ਤੁਹਾਡੀ ਡਾਇਰੈਕਟਰੀ ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ, ਤਾਂ ਇਹ ਬਲੌਕ ਹੋ ਜਾਂਦਾ ਹੈ।
ਫਿਰ ਚੇਤਾਵਨੀ ਸਾਹਮਣੇ ਆਈ।
open_basedir ਚੇਤਾਵਨੀਆਂ ਨੂੰ ਹੱਲ ਕਰਨ ਦਾ ਸਹੀ ਤਰੀਕਾ: AWS ਸੰਰਚਨਾ ਮਾਰਗ ਨੂੰ ਰੀਡਾਇਰੈਕਟ ਕਰੋ।
ਸੱਚ ਕਹਾਂ ਤਾਂ, ਮੇਰੀ ਪਹਿਲੀ ਪ੍ਰਤੀਕਿਰਿਆ ਇਸਨੂੰ ਬਦਲਣ ਦੀ ਸੀ।open_basedirਸੰਰਚਿਤ ਕਰੋ, ਪਾਓ/home/adminਇਸਨੂੰ ਸ਼ਾਮਲ ਕਰੋ।
ਪਰ ਫਿਰ ਮੈਂ ਇਸ ਬਾਰੇ ਦੁਬਾਰਾ ਸੋਚਿਆ, ਅਤੇ ਅਹਿਸਾਸ ਹੋਇਆ ਕਿ ਇਹ ਸਹੀ ਨਹੀਂ ਸੀ।
ਤੁਸੀਂ ਇਸ ਨਾਲ ਗਲਤੀ ਕੀਤੀ ਹੈ। ਫਾਰਮੈਟਿੰਗ ਗਲਤ ਹੈ। ਤੁਸੀਂ ਇੱਕ ਫਾਰਵਰਡ ਸਲੈਸ਼ ਖੁੰਝਾਇਆ ਹੈ ਅਤੇ ਇੱਕ ਵਾਧੂ ਜਗ੍ਹਾ ਜੋੜ ਦਿੱਤੀ ਹੈ। ਇਸਦੇ ਨਤੀਜੇ ਵਜੋਂ 500 ਗਲਤੀ ਹੋਈ ਹੈ, ਅਤੇ ਪੂਰੀ ਸਾਈਟ ਗਾਇਬ ਹੋ ਗਈ ਹੈ।
ਅਤੇopen_basedirਇਸਨੂੰ ਸੁਰੱਖਿਆ ਕਾਰਨਾਂ ਕਰਕੇ ਖੋਲ੍ਹਿਆ ਗਿਆ ਸੀ। ਜੇਕਰ ਤੁਸੀਂ ਇਸਨੂੰ ਖੋਲ੍ਹਦੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ ਅਸਲ ਵਿੱਚ ਸਰਵਰ ਨੂੰ ਇੱਕ ਖਾਮੀ ਦੇ ਰਹੇ ਹੋ, ਜੋ ਕਿ ਇਸਦੇ ਯੋਗ ਨਹੀਂ ਹੈ।
ਕੀ ਕੋਈ ਸੁਰੱਖਿਅਤ ਤਰੀਕਾ ਹੈ?
ਮੈਂ ਇੱਕ ਪਲ ਲਈ ਇਸ ਬਾਰੇ ਸੋਚਿਆ, ਕਿਉਂਕਿ AWS SDK ਉਹ ਹੈ ਜੋ ਤੁਹਾਨੂੰ ਲੱਭਣ ਦੀ ਲੋੜ ਹੈ.../home/admin/.aws/configਕੀ ਮੈਂ ਇਸਨੂੰ ਇਸ ਫਾਈਲ ਨੂੰ ਕਿਤੇ ਹੋਰ ਲੱਭਣ ਲਈ ਚਲਾਕੀ ਨਾਲ ਚਲਾ ਸਕਦਾ ਹਾਂ?
ਉਹਨਾਂ ਥਾਵਾਂ ਵਿੱਚੋਂ ਇੱਕ 'ਤੇ ਜਾਓ ਜੋ ਪਹਿਲਾਂ ਹੀ ਵਾਈਟਲਿਸਟ ਵਿੱਚ ਹਨ।
ਵਰਡਪ੍ਰੈਸ ਬੈਕਡਬਲਿਊਪਅੱਪ ਚੇਤਾਵਨੀਆਂ ਨੂੰ ਠੀਕ ਕਰੋ: wp-config.php ਵਿੱਚ ਕੋਡ ਦੀਆਂ ਦੋ ਲਾਈਨਾਂ ਸ਼ਾਮਲ ਕਰੋ
ਹੱਲ ਅਸਲ ਵਿੱਚ ਹਾਸੋਹੀਣਾ ਸਰਲ ਹੈ।
ਵਰਡਪ੍ਰੈਸ ਵਿੱਚwp-config.phpਫਾਈਲ ਵਿੱਚ ਕੋਡ ਦੀਆਂ ਦੋ ਲਾਈਨਾਂ ਜੋੜੋ।
// 解决 AWS open_basedir 警告的环境变量设置
putenv('AWS_CONFIG_FILE=' . __DIR__ . '/wp-content/uploads/.aws_config');
putenv('AWS_SHARED_CREDENTIALS_FILE=' . __DIR__ . '/wp-content/uploads/.aws_credentials');
putenv('AWS_EC2_METADATA_DISABLED=true');
/* That's all, stop editing! Happy publishing. */ਨਾਲ ਜੋੜ ਦਿਓ/* That's all, stop editing! Happy publishing. */ਬਸ ਇਸ ਲਾਈਨ ਤੋਂ ਉੱਪਰ ਜਾਓ।
ਬਸ ਇਹ ਤਿੰਨ ਲਾਈਨਾਂ।
没了.
ਮੁਰੰਮਤ ਪ੍ਰਭਾਵ ਦੀ ਪੁਸ਼ਟੀ: BackWPup ਬੈਕਅੱਪ ਲੌਗ ਆਮ ਵਾਂਗ ਵਾਪਸ ਆ ਗਏ ਹਨ।
ਬਦਲਾਅ ਕਰਨ ਤੋਂ ਬਾਅਦ, ਵਰਡਪ੍ਰੈਸ ਬੈਕਐਂਡ 'ਤੇ ਵਾਪਸ ਜਾਓ, BackWPup ਖੋਲ੍ਹੋ, ਅਤੇ "Run Now" 'ਤੇ ਕਲਿੱਕ ਕਰੋ।
ਦੌੜ ਪੂਰੀ ਹੋਣ ਤੋਂ ਬਾਅਦ ਲੌਗਾਂ ਦੀ ਜਾਂਚ ਕਰੋ।
ਚਮਕਦਾਰ ਪੀਲੇ ਰੰਗ ਦੀਆਂ ਚੇਤਾਵਨੀਆਂ ਖਤਮ ਹੋ ਗਈਆਂ ਹਨ, ਉਨ੍ਹਾਂ ਦੀ ਥਾਂ ਹਰੇ ਰੰਗ ਦੇ "ਸਫਲਤਾਪੂਰਵਕ ਪੂਰੇ" ਸੁਨੇਹਿਆਂ ਨੇ ਲੈ ਲਈ ਹੈ।
ਇਹ ਬਹੁਤ ਹੀ ਸੁਚਾਰੂ ਹੈ।
ਕੋਡ ਦੀਆਂ ਦੋ ਲਾਈਨਾਂ, ਜ਼ੀਰੋ ਜੋਖਮ, ਸੋਧਣ ਲਈ 10 ਸਕਿੰਟਾਂ ਤੋਂ ਵੀ ਘੱਟ ਸਮਾਂ, ਅਤੇ ਸਮੱਸਿਆ ਪੂਰੀ ਤਰ੍ਹਾਂ ਹੱਲ ਹੋ ਗਈ।
ਇਸ ਤਰ੍ਹਾਂ ਦੀਆਂ "ਘਾਤਕ ਨਹੀਂ ਪਰ ਤੰਗ ਕਰਨ ਵਾਲੀਆਂ" ਸਮੱਸਿਆਵਾਂ ਅਸਲ ਵਿੱਚ ਸਭ ਤੋਂ ਵੱਧ ਸਮਾਂ ਲੈਣ ਵਾਲੀਆਂ ਹੁੰਦੀਆਂ ਹਨ। ਕਿਉਂਕਿ ਤੁਹਾਨੂੰ ਨਹੀਂ ਪਤਾ ਕਿ ਕੀ ਇਹ ਅੱਪਡੇਟ ਤੋਂ ਬਾਅਦ ਅਚਾਨਕ ਵਿਗੜ ਜਾਵੇਗਾ, ਅਤੇ ਤੁਹਾਨੂੰ ਨਹੀਂ ਪਤਾ ਕਿ ਇਹ ਹੋਰ ਪਲੱਗਇਨਾਂ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਕਰੇਗਾ ਜਾਂ ਨਹੀਂ।
ਜੇਕਰ ਕਿਸੇ ਚੀਜ਼ ਨੂੰ ਦੋ ਲਾਈਨਾਂ ਦੇ ਕੋਡ ਨਾਲ ਪੂਰੀ ਤਰ੍ਹਾਂ ਖਤਮ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਤਾਂ ਇਸਨੂੰ ਰਸਤੇ ਵਿੱਚ ਨਾ ਛੱਡੋ।
ਠੀਕ ਹੈ, ਇਸ ਲੇਖ ਲਈ ਬੱਸ ਇੰਨਾ ਹੀ।
ਕਿਉਂਕਿ ਇਹ ਮਾਮਲਾ ਗੁੰਝਲਦਾਰ ਨਹੀਂ ਹੈ, ਇਸ ਲਈ ਮੈਨੂੰ ਤੁਹਾਨੂੰ ਕੋਈ ਪਿਛੋਕੜ ਗਿਆਨ, ਉਦਯੋਗ ਵਿਸ਼ਲੇਸ਼ਣ, ਜਾਂ ਭਵਿੱਖ ਦੇ ਰੁਝਾਨ ਦੇਣ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ।
ਇਹ ਵਰਡਪ੍ਰੈਸ ਐਡਮਿਨ ਪੈਨਲ ਵਿੱਚ ਸਿਰਫ਼ ਇੱਕ ਛੋਟੀ ਜਿਹੀ ਚੇਤਾਵਨੀ ਹੈ, ਅਤੇ ਕੋਡ ਦੀਆਂ ਦੋ ਲਾਈਨਾਂ ਨਾਲ ਇੱਕ ਹੱਲ ਹੈ।
ਉਮੀਦ ਹੈ, ਅਗਲੀ ਵਾਰ ਜਦੋਂ ਤੁਸੀਂ ਉਹ ਪੀਲੀ ਚੇਤਾਵਨੀ ਦੇਖੋਗੇ, ਤਾਂ ਤੁਹਾਨੂੰ ਇਹ ਲੇਖ ਯਾਦ ਹੋਵੇਗਾ।
ਉਮੀਦ ਹੈ, ਚੇਨ ਵੇਇਲਿਯਾਂਗ ਦੇ ਬਲੌਗ ( https://www.chenweiliang.com/ ) 'ਤੇ ਸਾਂਝਾ ਕੀਤਾ ਗਿਆ ਲੇਖ "ਵਰਡਪ੍ਰੈਸ ਬੈਕਡਬਲਪਅੱਪ ਪਲੱਗਇਨ ਨੂੰ ਕਿਵੇਂ ਹੱਲ ਕੀਤਾ ਜਾਵੇ is_readable(): open_basedir ਪਾਬੰਦੀ ਪ੍ਰਭਾਵ ਵਿੱਚ ਹੈ। AWS ਮਾਰਗ ਚੇਤਾਵਨੀ?" ਤੁਹਾਡੇ ਲਈ ਮਦਦਗਾਰ ਹੋਵੇਗਾ।
ਇਸ ਲੇਖ ਦਾ ਲਿੰਕ ਸਾਂਝਾ ਕਰਨ ਲਈ ਬੇਝਿਜਕ ਮਹਿਸੂਸ ਕਰੋ: https://www.chenweiliang.com/cwl-34455.html
