உதவி

தரவுத்தளங்கள், FTP, SSH மற்றும் PHP

தளங்களைத் தாங்களே உருவாக்கிப் பராமரிப்பவர்களுக்கு: தரவுத்தளங்கள், FTP, SSH, PHP, திட்டமிட்ட பணிகள்.

தரவுத்தளங்கள்

தரவுத்தளத்தை எப்படி உருவாக்குவது?

கட்டுப்பாட்டுப் பலகம், MySQL Databases: 6 முதல் 20 எழுத்துகள் கொண்ட பெயர், Create Database. அந்தப் பக்கம் ஒவ்வொரு தரவுத்தளத்தையும் அதன் Server (தரவுத்தள host), அதன் பெயர் (அதுவே username உம்), கடவுச்சொல்லை அமைக்கும் இடம் ஆகியவற்றுடன் பட்டியலிடும். சேவையகம் MariaDB 10.11, MySQL உடன் இணக்கமானது. ஒவ்வொரு தரவுத்தளமும் 1 GB வரை கொள்ளும்.

என் தளம் அதன் தரவுத்தளத்துடன் இணைய முடியவில்லை.

தரவுத்தள host ஆக MySQL Databases பக்கத்தில் காட்டப்படும் Server ஐப் பயன்படுத்துங்கள், ஒருபோதும் "localhost" அல்ல: தரவுத்தளங்கள் அவற்றின் சொந்தச் சேவையகங்களில் இயங்குகின்றன. மாற்றத்துக்குப் பிறகு தவறான host தான் வழக்கமான காரணம்.

தரவுத்தளத்தை எப்படி import அல்லது export செய்வது?

கட்டுப்பாட்டுப் பலகத்தில் phpMyAdmin மூலம். Export: தரவுத்தளத்தைத் தேர்ந்தெடுத்து, Export, Quick, SQL, Go. Import: Import, .sql கோப்பைத் தேர்ந்தெடுத்து, Go; keys இல் தோல்வியடைந்தால், "Enable foreign key checks" ஐக் குறிநீக்கி மீண்டும் முயலுங்கள். பெரிய imports SSH மூலம் சிறப்பாக வேலை செய்யும் (.zip அல்லது .gz கோப்புகளை முதலில் பிரித்தெடுங்கள்):

mysql -h host -u user -p database < file.sql
mysqldump -h host -u user -p database > file.sql
MySQL Workbench அல்லது HeidiSQL இலிருந்து எப்படி இணைவது?

கட்டுப்பாட்டுப் பலகம், Remote MySQL Access: தரவுத்தள user ஐத் தேர்ந்தெடுத்து, உங்கள் IP முகவரியை உள்ளிட்டு Add Host அழுத்துங்கள். அந்தப் பக்கம் remote இணைப்புகளுக்கான host மற்றும் port ஐக் காட்டும்; அவை வழக்கமான தரவுத்தள host இலிருந்து வேறுபட்டவை. எந்த IP முகவரியையும் (%) அனுமதிக்கலாம், ஆனால் பரிந்துரைக்கப்படவில்லை.

"MySQL server has gone away", அல்லது பெரிய தரவுத்தளம் தளத்தை மெதுவாக்குகிறது.

phpMyAdmin இல் எல்லா அட்டவணைகளையும் தேர்ந்தெடுத்து "Optimize table" ஐத் தேர்ந்தெடுங்கள்; "Repair table" அதே பட்டியலில் உள்ளது. நீக்கப்பட்ட plugins இன் அட்டவணைகள், பழைய revisions, காலாவதியான transients ஐ நீக்கும்போது WordPress தரவுத்தளங்கள் சுருங்கும்.

FTP மற்றும் SFTP

FTP இணையவில்லை.

FTP இயல்பாகப் பூட்டப்பட்டுள்ளது. கட்டுப்பாட்டுப் பலகத்தின் FTP பகுதியில், அதை ஒரு நேரத்துக்கு அல்லது உங்கள் IP முகவரிக்குத் திறங்கள்; அங்குள்ள FTP Details host, username, கடவுச்சொல்லைத் தரும். பூட்டிய FTP தான் அது தோல்வியடைவதற்கான மிகப் பொதுவான காரணம்.

நான் எந்த அமைப்புகளைப் பயன்படுத்துவது?
  • Host: உங்கள் பெயர் சேவையகங்கள் எங்களைச் சுட்டியதும் ftp.yourdomain.lk; அதற்கு முன், FTP Details இல் உள்ள host.
  • SFTP (குறியாக்கம் செய்யப்பட்டது, பரிந்துரைக்கப்படுகிறது): port 22, அதே விவரங்கள். FileZilla அல்லது WinSCP ஐப் பயன்படுத்துங்கள்.
  • சாதாரண FTP: passive mode, ports 49152-65534.
  • உங்கள் தளத்தின் கோப்புகள் public_html இல் உள்ளன.

FTP வழியாக மிகப்பெரிய கோப்பு 5 GB; அதைவிடப் பெரிய கோப்புகளுக்கு SSH ஐப் பயன்படுத்துங்கள் (WinSCP இல் SCP, அல்லது rsync).

SSH

SSH ஐ எப்படி அமைப்பது?

கட்டுப்பாட்டுப் பலகம், SSH Access (Security): ஒரு public key ஐச் சேருங்கள் (ssh-keygen மூலம், அல்லது Windows இல் PuTTYgen மூலம் உருவாக்கியது), அல்லது authenticator app உடன் SSH கடவுச்சொல்லை அமையுங்கள். அந்தப் பக்கம் host மற்றும் username ஐக் காட்டும். முதல் அமைப்புக்குப் பிறகு 30 நிமிடங்கள் வரை பொறுங்கள். பிறகு PuTTY அல்லது Windows Terminal மூலம், அல்லது macOS மற்றும் Linux இல் இணையுங்கள்:

ssh username@host
rsync -v file.zip username@host:path

உங்கள் home path கட்டுப்பாட்டுப் பலகத்தில் (Account Information) காட்டப்படும்.

நான் sudo ஐப் பயன்படுத்தலாமா?

இல்லை. sudo ஐப் பயன்படுத்தினால் session முடிந்து, அந்த ஹோஸ்டிங்குக்கு SSH தடுக்கப்படும்; தடையை நீக்க எங்களுக்கு எழுதுங்கள்.

எந்தக் கருவிகள் நிறுவப்பட்டுள்ளன?

WP-CLI (wp), Composer, Git, rsync, unzip, ImageMagick. Login செய்தி PHP பதிப்புகளைப் பட்டியலிடும். Composer ஐ உங்கள் தளத்தின் PHP பதிப்புடன் இயக்குங்கள், எடுத்துக்காட்டாக PHP 8.3:

/usr/bin/php83 -f /usr/bin/composer install

Composer 2 என்பது composer2. காட்டப்படும் இடத்தில், Git க்குக் கட்டுப்பாட்டுப் பலகத்தில் ஒரு பக்கமும் உண்டு (Git Version Control). Git hooks க்கு எங்கள் பக்கத்தில் ஒரு அமைப்பு தேவை; எங்களுக்கு எழுதுங்கள்.

"kex_exchange_identification: connection closed by remote host"

நெட்வொர்க் சிக்கல், தவறான host, அல்லது பழைய முறைகளை வழங்கும் SSH நிரல். நிரலைப் புதுப்பித்து வேறு நெட்வொர்க்கை முயலுங்கள்; அது தொடர்ந்தால், முழு வெளியீட்டுடன் எங்களுக்கு எழுதுங்கள்.

PHP

PHP பதிப்பை எப்படி மாற்றுவது?

கட்டுப்பாட்டுப் பலகம், Change PHP Version: 5.3 முதல் 8.5 வரை, ஒரு நிமிடத்துக்குள் இயங்கும். ஒரு கோப்புறை அல்லது subdomain க்கு வேறு பதிப்பு வேண்டுமென்றால், இதை அந்தக் கோப்புறையின் .htaccess இன் மேலே இடுங்கள் (83 என்றால் 8.3, 74 என்றால் 7.4):

AddHandler x-httpd-php83 .php
உலாவி PHP code ஐ இயக்காமல் காட்டுகிறது.

.htaccess இல் உடைந்த அல்லது அந்நிய PHP வரி, பெரும்பாலும் "AddHandler application/x-httpd-ea-php56" போன்ற cPanel இலிருந்து மிஞ்சியது. அதை நீக்கிக் கட்டுப்பாட்டுப் பலகத்தில் பதிப்பை அமையுங்கள்.

memory_limit அல்லது upload_max_filesize ஐ எப்படி உயர்த்துவது?

கட்டுப்பாட்டுப் பலகம், PHP Configuration. இயல்புநிலைகள் நினைவகத்துக்கு 128M, uploads க்கு 128M; memory_limit 2048M வரை செல்லும், கிட்டத்தட்ட எல்லாத் தளங்களுக்கும் 1024M போதுமானது. Error log இல் "Allowed memory size exhausted" என்றால் அதை உயர்த்துங்கள். மற்ற அமைப்புகள் தளத்தின் கோப்புறையில் உள்ள .user.ini கோப்பில் செல்லும்.

PHP தவறான நேரத்தைக் காட்டுகிறது.

தளத்தின் கோப்புறையில் உள்ள .user.ini இல் இந்த வரியைச் சேருங்கள்:

date.timezone=Asia/Colombo
என்ன PHP extensions உள்ளன?

மற்றவற்றுடன் mysqli, PDO (MySQL, PostgreSQL, SQLite), gd, imagick, intl, mbstring, curl, zip, soap, sodium, OPcache, ionCube Loader (PHP 8.0 இல் இல்லை), SourceGuardian. பழைய mysql_* functions PHP 5.3-5.6 இல் மட்டுமே உள்ளன. முழுப் பட்டியல்: SSH மூலம் php83 -m, அல்லது phpinfo() கோப்பு (பிறகு அதை நீக்குங்கள்). WordPress ஹோஸ்டிங்கில் exec, shell_exec போன்ற சில functions பாதுகாப்புக்காக அணைக்கப்படலாம்.

என் PHP script அஞ்சல் அனுப்பவில்லை.

அனுப்புநர் முகவரி அதே ஹோஸ்டிங்கில் உள்ள டொமைனில் இருக்க வேண்டும். வரம்புகள் மின்னஞ்சல் இல் உள்ளன. சிவப்பு Malware Scan கண்டுபிடிப்புகள் உள்ள தளத்தில் PHP mail அணைக்கப்பட்டிருக்கும்.

நான் Node.js, Python அல்லது Redis ஐ இயக்க முடியுமா?

இல்லை: Node.js (எனவே server-side Next.js அல்லது Remix இல்லை), Python/Django, Xdebug, Redis கிடைக்காது. அவை தேவைப்பட்டால், எங்களுக்கு எழுதுங்கள். Static கோப்புகளாக உருவாக்கப்பட்ட React அல்லது Vue app (npm run build) வேலை செய்யும்: build அல்லது dist கோப்புறையை upload செய்து, document root ஐ அதைச் சுட்டச் செய்து, .htaccess இல் சேருங்கள்:

RewriteEngine On
RewriteBase /
RewriteRule ^index\.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.html [L]

Scheduled tasks (cron)

என் scheduled task பழைய PHP ஐ இயக்குகிறது அல்லது வேலை செய்யவில்லை.

அதைக் கட்டுப்பாட்டுப் பலகத்தின் Scheduled Tasks இல் அமையுங்கள். wget மூலம் ஒரு முகவரியை அழைக்கும் task பழைய PHP பதிப்பின் கீழ் இயங்கும்; தற்போதைய code க்கு, அதை உங்கள் தளத்தின் பதிப்பின் PHP உடன் தொடங்குங்கள், எடுத்துக்காட்டாக /usr/bin/php83-cgi. ஒரே வேலைக்கு இரண்டு tasks ஐ ஒரே நிமிடத்தில் தொடங்காதீர்கள். Malware Scan இல் சிவப்புக் கண்டுபிடிப்புகள் இருக்கும் வரை scheduled tasks அணைக்கப்படும். சரியான task இன்னும் இயங்கவில்லை என்றால், எங்களுக்கு எழுதுங்கள்.

இன்னும் சிக்கலா?

support (at) lunida.net க்கு சிங்களம், தமிழ் அல்லது ஆங்கிலத்தில் எழுதுங்கள். உங்கள் டொமைனையும் நீங்கள் பார்ப்பதையும் சொல்லுங்கள்; screenshot உதவும்.

support (at) lunida.net