{"id":50222,"date":"2025-07-14T09:21:50","date_gmt":"2025-07-14T09:21:50","guid":{"rendered":"https:\/\/www.devopsschool.com\/blog\/?p=50222"},"modified":"2025-07-14T09:21:50","modified_gmt":"2025-07-14T09:21:50","slug":"xampp-lampp-tutorials-list-of-production-files-to-cleanup-guide","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/xampp-lampp-tutorials-list-of-production-files-to-cleanup-guide\/","title":{"rendered":"XAMPP &#8211; LAMPP Tutorials: List of Production Files to Cleanup Guide"},"content":{"rendered":"\n<p>Here\u2019s a comprehensive and <strong>updated tutorial<\/strong> on which files should be cleaned up regularly in a production environment running XAMPP (under <code>\/opt\/lampp<\/code>), <strong>what each file\/folder is<\/strong>, and <strong>how to automate cleanup safely<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>XAMPP Production File Cleanup Guide<\/strong><\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">Keeping Your <code>\/opt\/lampp<\/code> Environment Healthy<\/h2>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>1. Why Regular Cleanup Is Important<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Performance:<\/strong> Old logs and cache files fill up disk space and slow down the system.<\/li>\n\n\n\n<li><strong>Security:<\/strong> Sensitive info in old logs can be a risk if not managed.<\/li>\n\n\n\n<li><strong>Reliability:<\/strong> Overfilled disk can cause XAMPP\/MySQL\/Apache to crash or refuse new data.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>2. Key Locations in <code>\/opt\/lampp<\/code> to Clean<\/strong><\/h2>\n\n\n\n<p>The typical <strong>XAMPP folder structure<\/strong> on Linux (like <code>\/opt\/lampp<\/code>) includes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>\/opt\/lampp\/logs\/<\/code> \u2014 Apache and XAMPP logs<\/li>\n\n\n\n<li><code>\/opt\/lampp\/apache\/logs\/<\/code> \u2014 Apache server logs<\/li>\n\n\n\n<li><code>\/opt\/lampp\/mysql\/data\/<\/code> or <code>\/opt\/lampp\/var\/mysql\/<\/code> \u2014 MySQL data and logs<\/li>\n\n\n\n<li><code>\/opt\/lampp\/php\/logs\/<\/code> \u2014 PHP logs<\/li>\n\n\n\n<li><code>\/opt\/lampp\/temp\/<\/code> or <code>\/opt\/lampp\/tmp\/<\/code> \u2014 Temporary files<\/li>\n\n\n\n<li><code>\/opt\/lampp\/htdocs\/<\/code> \u2014 Website files (may have user\/app caches, uploads, sessions)<\/li>\n\n\n\n<li>Any <code>storage\/<\/code> directories for frameworks like Laravel<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>3. What Files Should Be Cleaned Regularly?<\/strong><\/h2>\n\n\n\n<p>Below are the files and folders to clean, <strong>with what they do<\/strong> and <strong>how to handle them safely<\/strong>:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>A. Apache Log Files<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Location:<\/strong> <code>\/opt\/lampp\/logs\/<\/code> and <code>\/opt\/lampp\/apache\/logs\/<\/code><\/li>\n\n\n\n<li><strong>Files:<\/strong>\n<ul class=\"wp-block-list\">\n<li><code>access.log<\/code><\/li>\n\n\n\n<li><code>error.log<\/code><\/li>\n\n\n\n<li>Any rotated log files (e.g., <code>error.log.1<\/code>, <code>access.log.1<\/code>, <code>.gz<\/code>, etc.)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Why:<\/strong> These logs can get huge, fast.<\/li>\n\n\n\n<li><strong>How:<\/strong>\n<ul class=\"wp-block-list\">\n<li><strong>Delete<\/strong> old rotated\/compressed logs (e.g., <code>*.gz<\/code>, <code>.1<\/code> files)<\/li>\n\n\n\n<li><strong>Truncate<\/strong> main logs regularly (to avoid interrupting Apache): <code>> \/opt\/lampp\/logs\/access.log > \/opt\/lampp\/logs\/error.log<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>B. PHP Error Logs<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Location:<\/strong> <code>\/opt\/lampp\/php\/logs\/<\/code><\/li>\n\n\n\n<li><strong>Files:<\/strong>\n<ul class=\"wp-block-list\">\n<li><code>php_error_log<\/code><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Why:<\/strong> Captures PHP warnings\/errors, can grow large.<\/li>\n\n\n\n<li><strong>How:<\/strong>\n<ul class=\"wp-block-list\">\n<li><strong>Truncate<\/strong> periodically: <code>> \/opt\/lampp\/php\/logs\/php_error_log<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>C. MySQL Log and Error Files<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Location:<\/strong> <code>\/opt\/lampp\/var\/mysql\/<\/code> or <code>\/opt\/lampp\/mysql\/data\/<\/code><\/li>\n\n\n\n<li><strong>Files:<\/strong>\n<ul class=\"wp-block-list\">\n<li><code>hostname.err<\/code> (e.g., <code>ip-172-31-34-212.err<\/code>)<\/li>\n\n\n\n<li><code>mysql-bin.*<\/code> (binary logs, if enabled)<\/li>\n\n\n\n<li>Slow query logs (<code>mysql-slow.log<\/code>, if enabled)<\/li>\n\n\n\n<li>Old rotated logs (<code>*.old<\/code>, <code>*.BAK<\/code>, etc.)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Why:<\/strong> Large logs waste space; old binlogs aren\u2019t needed after backup\/replication.<\/li>\n\n\n\n<li><strong>How:<\/strong><ul><li><strong>Truncate<\/strong> the error log (never delete while MySQL is running): <code>> \/opt\/lampp\/var\/mysql\/ip-172-31-34-212.err<\/code><\/li><li><strong>Remove<\/strong> old binlogs (only if not needed for recovery\/replication): <code>rm \/opt\/lampp\/var\/mysql\/mysql-bin.00000*<\/code><\/li><\/ul><strong>NEVER delete <code>ibdata1<\/code>, <code>ib_logfile*<\/code>, <code>aria_log*<\/code>, or any database folders\/files here.<\/strong><\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>D. Temporary Files<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Location:<\/strong> <code>\/opt\/lampp\/temp\/<\/code>, <code>\/opt\/lampp\/tmp\/<\/code>, and project <code>storage\/framework\/cache<\/code>, <code>storage\/framework\/sessions<\/code>, etc.<\/li>\n\n\n\n<li><strong>Files:<\/strong>\n<ul class=\"wp-block-list\">\n<li>Upload temp files, session files, cache<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Why:<\/strong> Safe to delete files not recently accessed (stale session, cache, failed uploads).<\/li>\n\n\n\n<li><strong>How:<\/strong>\n<ul class=\"wp-block-list\">\n<li>Example to remove files older than 2 days: <code>find \/opt\/lampp\/temp\/ -type f -mtime +2 -delete find \/opt\/lampp\/tmp\/ -type f -mtime +2 -delete<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>E. Application\/Framework Cache &amp; Session Files<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Laravel example:<\/strong><br><code>\/opt\/lampp\/htdocs\/your_project\/storage\/framework\/sessions\/<\/code><br><code>\/opt\/lampp\/htdocs\/your_project\/storage\/framework\/cache\/<\/code><br><code>\/opt\/lampp\/htdocs\/your_project\/storage\/framework\/views\/<\/code><\/li>\n\n\n\n<li><strong>Why:<\/strong> Sessions, cache, and compiled views are safe to clear out if old.<\/li>\n\n\n\n<li><strong>How:<\/strong> <code>find \/opt\/lampp\/htdocs\/your_project\/storage\/framework\/sessions\/ -type f -mtime +1 -delete find \/opt\/lampp\/htdocs\/your_project\/storage\/framework\/cache\/ -type f -mtime +1 -delete find \/opt\/lampp\/htdocs\/your_project\/storage\/framework\/views\/ -type f -mtime +1 -delete<\/code><\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>F. Old Backup Files<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Location:<\/strong> Wherever you store old <code>.sql<\/code>, <code>.tar<\/code>, <code>.gz<\/code>, etc. (often <code>\/backups\/<\/code> or <code>\/opt\/lampp\/htdocs\/backups\/<\/code>)<\/li>\n\n\n\n<li><strong>Why:<\/strong> Don\u2019t keep too many old backups.<\/li>\n\n\n\n<li><strong>How:<\/strong> <code>find \/opt\/lampp\/htdocs\/backups\/ -type f -mtime +7 -delete<\/code> <em>(Deletes backup files older than 7 days.)<\/em><\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>4. What Should You NEVER Delete?<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Database data files (<code>ibdata1<\/code>, <code>ib_logfile0<\/code>, etc. in <code>var\/mysql\/<\/code>)<\/li>\n\n\n\n<li>Anything inside database directories (unless you want to drop\/delete a database)<\/li>\n\n\n\n<li>Application files, user uploads, etc. (unless verified as junk)<\/li>\n\n\n\n<li>XAMPP config files<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>5. Automating Cleanup With a Cron Job<\/strong><\/h2>\n\n\n\n<p>Here\u2019s a <strong>sample script<\/strong> you could run daily or weekly via cron:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\"><span class=\"hljs-comment\">#!\/bin\/bash<\/span>\n\n<span class=\"hljs-comment\"># Clean Apache logs (keep last 7 days)<\/span>\nfind \/opt\/lampp\/logs\/ -type f -name <span class=\"hljs-string\">\"*.gz\"<\/span> -mtime +<span class=\"hljs-number\">7<\/span> -delete\nfind \/opt\/lampp\/apache\/logs\/ -type f -name <span class=\"hljs-string\">\"*.gz\"<\/span> -mtime +<span class=\"hljs-number\">7<\/span> -delete\n\n<span class=\"hljs-comment\"># Truncate current log files<\/span>\n&gt; \/opt\/lampp\/logs\/access.log\n&gt; \/opt\/lampp\/logs\/error.log\n&gt; \/opt\/lampp\/php\/logs\/php_error_log\n\n<span class=\"hljs-comment\"># Truncate MySQL error log<\/span>\n&gt; \/opt\/lampp\/<span class=\"hljs-keyword\">var<\/span>\/mysql\/ip<span class=\"hljs-number\">-172<\/span><span class=\"hljs-number\">-31<\/span><span class=\"hljs-number\">-34<\/span><span class=\"hljs-number\">-212.<\/span>err\n\n<span class=\"hljs-comment\"># Clean temp files older than 2 days<\/span>\nfind \/opt\/lampp\/tmp\/ -type f -mtime +<span class=\"hljs-number\">2<\/span> -delete\nfind \/opt\/lampp\/temp\/ -type f -mtime +<span class=\"hljs-number\">2<\/span> -delete\n\n<span class=\"hljs-comment\"># Clean Laravel\/Framework session &amp; cache files older than 1 day<\/span>\nfind \/opt\/lampp\/htdocs\/your_project\/storage\/framework\/sessions\/ -type f -mtime +<span class=\"hljs-number\">1<\/span> -delete\nfind \/opt\/lampp\/htdocs\/your_project\/storage\/framework\/cache\/ -type f -mtime +<span class=\"hljs-number\">1<\/span> -delete\nfind \/opt\/lampp\/htdocs\/your_project\/storage\/framework\/views\/ -type f -mtime +<span class=\"hljs-number\">1<\/span> -delete\n\n<span class=\"hljs-comment\"># Clean old backup files (older than 7 days)<\/span>\nfind \/opt\/lampp\/htdocs\/backups\/ -type f -mtime +<span class=\"hljs-number\">7<\/span> -delete\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<ul class=\"wp-block-list\">\n<li>Save this as <code>cleanup_xampp.sh<\/code><\/li>\n\n\n\n<li>Make it executable:<br><code>chmod +x cleanup_xampp.sh<\/code><\/li>\n\n\n\n<li>Add to crontab for daily execution (example at 2:30am): <code>30 2 * * * \/path\/to\/cleanup_xampp.sh<\/code><\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>6. Monitoring Disk Usage<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Regularly check usage: <code>du -sh \/opt\/lampp\/*<\/code><\/li>\n\n\n\n<li>Be proactive; if logs grow rapidly, increase cleanup frequency or log rotation.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>7. Security and Best Practices<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Always review before deleting\u2014<strong>automate with care<\/strong>.<\/li>\n\n\n\n<li>Take regular full backups before aggressive cleaning, especially before touching anything in <code>var\/mysql\/<\/code>.<\/li>\n\n\n\n<li>Set up <strong>logrotate<\/strong> for Apache, PHP, and MySQL logs for better management.<\/li>\n\n\n\n<li>Document your cleanup routines for the team.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Summary Table<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Location<\/th><th>What to Clean<\/th><th>Command Example<\/th><th>Notes<\/th><\/tr><\/thead><tbody><tr><td><code>\/opt\/lampp\/logs\/<\/code><\/td><td>Apache logs<\/td><td><code>&gt; access.log<\/code><\/td><td>Rotate\/truncate; don\u2019t delete active logs<\/td><\/tr><tr><td><code>\/opt\/lampp\/php\/logs\/<\/code><\/td><td>PHP logs<\/td><td><code>&gt; php_error_log<\/code><\/td><td><\/td><\/tr><tr><td><code>\/opt\/lampp\/var\/mysql\/<\/code><\/td><td>MySQL error logs<\/td><td><code>&gt; hostname.err<\/code><\/td><td>Never delete core DB files<\/td><\/tr><tr><td><code>\/opt\/lampp\/tmp\/<\/code> <code>\/opt\/lampp\/temp\/<\/code><\/td><td>Temp files<\/td><td><code>find ... -mtime +2 -delete<\/code><\/td><td>Only old files<\/td><\/tr><tr><td><code>\/opt\/lampp\/htdocs\/project\/storage\/<\/code><\/td><td>Sessions, cache<\/td><td><code>find ... -mtime +1 -delete<\/code><\/td><td>Framework-specific<\/td><\/tr><tr><td><code>\/opt\/lampp\/htdocs\/backups\/<\/code><\/td><td>Old backups<\/td><td><code>find ... -mtime +7 -delete<\/code><\/td><td>Optional<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Conclusion<\/strong><\/h2>\n\n\n\n<p>Regular cleanup of log, temp, and cache files under <code>\/opt\/lampp<\/code> keeps your production XAMPP environment <strong>healthy, secure, and reliable<\/strong>.<br>Never delete database or config files, always <strong>backup before cleaning<\/strong>, and automate your routines for peace of mind!<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Here\u2019s a comprehensive and updated tutorial on which files should be cleaned up regularly in a production environment running XAMPP (under \/opt\/lampp), what each file\/folder is, and how to automate&#8230; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[2],"tags":[],"class_list":["post-50222","post","type-post","status-publish","format-standard","hentry","category-uncategorised"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/50222","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=50222"}],"version-history":[{"count":1,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/50222\/revisions"}],"predecessor-version":[{"id":50223,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/50222\/revisions\/50223"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=50222"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=50222"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=50222"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}