WordPress is engineered not to interfere with existing files, including .htaccess rules it generates to enable use of pretty permalinks.
Simply put you cannot make WP process or protect media files without some form of .htaccess or other web server configuration, because typically it handles them completely separately and WP doesn’t interfere with it.
Related Posts:
- Rename UPLOADS folder with custom WP_CONTENT_DIR
- Creating a searchable A-Z listing of hundreds of companies/services
- Could not create directory. /var/www/html/wp-content/plugins/PLUGIN_NAME/
- How do you modify the WordPress directory structure?
- Integrate wordpress into index page
- Users can only view their content from the front end
- WordPress in a Subdirectory
- How to setup a membership system in WordPress?
- Can’t do a src to node modules folder
- Problems with running a 2nd installation of WordPress on my domain?
- Hosing a website within a WordPress directory/folder
- Creating a Treeview Listing of a Directory
- Having a forum in a subfolder
- How to: Easily Move a WordPress Install from Development to Production?
- Is there a flowchart for WordPress loading sequence?
- Essential technical features for high-end WordPress web hosting? [closed]
- How to structure a plugin
- How to remove admin menu pages inserted by plugins?
- How to put logs in WordPress
- How to get the Date Format and Time Format settings for use in my template?
- Where are Additional CSS files stored
- Best Practices for Regression Testing WordPress Websites?
- Remove wrapping div and ul from output of wp_nav_menu
- What Is The Use Of map_meta_cap Filter?
- get post author id outside loop
- Custom Walker: how to get ID in function start_lvl
- Creative uses of WordPress [closed]
- How to *remove* a parent theme page template from a child theme?
- How do I make my child theme re-apply the settings that were customised when its parent was active?
- get_template_directory() vs bloginfo( ‘template_directory’ ) vs TEMPLATEPATH
- Multiple Inputs in a Customizer Control
- New WP_Customize API – how does it work under the hood?
- Embedding a SOAP Client into a WordPress Plugin?
- Is there anything that Joomla or Drupal can do that can’t be done in WordPress? [closed]
- Update widget form after drag-and-drop (WP save bug)
- Data sanitization: Best Practices with code examples
- How to benchmark a WordPress installation? [closed]
- Should I delete the default themes?
- Moving WP install from local to live, what about wp_posts GUID?
- Modified wp.media.view.Settings.Gallery in Backbone JS, but editing doesn’t work
- Running Gutenberg React in Development Mode
- Prevent WordPress from automatically installing a new theme each year
- Can we use one WordPress installation for multiple databases, domains and content directories
- Is there a blank theme framework compatible with WP 3.0? [closed]
- Plugin SVN & update API – how are plugins identified?
- Users with custom roles not showing in post author select box
- How to use more than 256MB of memory in the admin?
- How do register_sidebar() and get_sidebar() work together?
- How do you get formatted content of a post using the WordPress API?
- Localization: I want the backend: english and frontend in defined language
- Are there any forks of WordPress (and what is different about them)?
- How to Change 404 page title
- Make Custom Metaboxes Collapse by Default
- WordPress Paginate $wpdb->get_results
- Custom maintenance page
- Add button to TinyMCE bar without creating a plugin
- Why do I get the timeout warning?
- How to add a new product type on woocommerce product types? [closed]
- How to include own css on wordpress tinymce editor?
- How to disable page delete
- add button to post edit page when post_status=publish
- how to override woocommerce specific loop or archive-product.php [closed]
- Modify existing plugin function using filter (without modifying the plugin directly)
- WordPress hook before inserting post into database
- Any post install tips after installing WordPress 3.0.1?
- Making Custom Fields Standard in the Admin UI
- Remove WordPress theme from a specific page
- Version Control: Entire site or just pieces?
- Getting a stack trace when an error occurs?
- Check for and enforce unique value in user-entered custom meta field in WP Admin
- Backup the Database and Restore from the Backup?
- get_pages() not ordering as it should
- Scaling a WP eCommerce site
- Custom Search Query
- How to remove comment section from page only , not from posts pages?
- How can I hide a category from Contributors in the edit/add new post screen?
- Looking for a lightweight theme using WP3 new tags and features (not 2010) [closed]
- Why doesn’t WP_Image_Editor save images using the Filesystem API?
- Pitfalls when Distributing Plugins that Access SOAP Web Services?
- How to get current_cat in navbar, in single post
- Default value for add_settings_field
- Seamless integration between WordPress and BBpress
- WordPress 3 MU for a development/stage/production site
- Disable Visible Edit Shortcuts in the Customizer
- How to make a script load after Custom Block is loaded in the editor?
- Updating WordPress overwriting customization tweaks – strategies?
- What is the best way to customise admin files so they survive future upgrades?
- Hide admin notices/notifications from everyone but super admin?
- Change the login button on the login page
- How to customize the default HTML for WordPress Attachments
- Verify nonce in REST API?
- Add custom html to last sub-menu item
- Get all products with a custom attribute
- Customizing the Subject Field in WordPress’ Notification Emails?
- How to update the delete user confirmation form?
- How to move wp-content (or uploads) outside of the WordPress directory
- Need help with friendly URL’s in WordPress
- How to add Disqus comment count
- How to keep a WordPress site synchronized between two servers?
- Upgrading WordPress and Plugins; any Tips to Avoid Trouble?