ఆర్టికల్ డైరెక్టరీ
నేను ఎప్పటిలాగే వర్డ్ప్రెస్ అడ్మిన్ ప్యానెల్ను తెరిచి , బ్యాకప్ లాగ్లను తనిఖీ చేయడానికి సిద్ధమయ్యాను.
అప్పుడు, నేను చాలా పసుపు రంగువి చూశాను.
హెచ్చరిక, హెచ్చరిక, మరెన్నో హెచ్చరికలు.
警告: 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 కాన్ఫిగరేషన్ డైరెక్టరీ కోసం స్వయంచాలకంగా వెతకడం ఇదే.
అది వినడానికి కొంచెం గందరగోళంగా ఉంది, కదూ?
ముఖ్యంగా, దీని అర్థం ఏమిటంటే, మీరు వర్డ్ప్రెస్లో S3 స్టోరేజ్ లేదా క్లౌడ్ఫ్రంట్ వంటి AWS-సంబంధిత ప్లగిన్ను ఇన్స్టాల్ చేస్తే, ఈ ప్లగిన్లన్నీ వాటి ప్రధాన భాగంలో 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ఈ ఫైల్ కోసం వేరే చోట వెతికేలా నేను దీనిని మోసగించగలనా?
ఇప్పటికే వైట్లిస్ట్లో ఉన్న ప్రదేశాలలో ఒకదానికి వెళ్లండి.
WordPress BackWPup హెచ్చరికలను పరిష్కరించండి: 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/ ) లో పంచుకున్న "How to resolve the WordPress BackWPup plugin is_readable(): open_basedir restriction in effect. AWS path warning?" అనే వ్యాసం మీకు సహాయకరంగా ఉంటుందని ఆశిస్తున్నాము.
ఈ వ్యాసం యొక్క లింక్ను పంచుకోవడానికి సంకోచించకండి: https://www.chenweiliang.com/cwl-34455.html
