LAMP Stack

Any of niggers run LAMP stacks often? I want to fuck around with MediaWiki but have very little experience with site hosting besides some localhost fuckery with XAMPP. How do I learn how to master that so I can host a low resource wiki I can mess around with?

Other urls found in this thread:

en.wikipedia.org/wiki/Comparison_of_wiki_software
learnbchs.org/
twitter.com/AnonBabble

install gentoo

"L" is assumed by default. If it's not linux you've already fucked up, doesn't need to be specified. This isn't Pajeetland where everybody uses Windows Server and you have to tell them that, no, this one is using Linux. Fuck off.

"A" doesn't matter. It's a server. Who cares? Apache or Nginx doesn't really matter at all in your development flow. You configure it and make it run and that's it. You shouldn't ever have to touch it again after that.

"M" is important, but it should be called "D" for database. You should really give some thought to your data structures and storage and backup plans when you choose a database. Just using MySQL because it's part of a meme LAMP acronym is folly. You should be using it because you want to use a relational database. Otherwise you might want something non-relational like MongoDB. These are big decisions that will affect a lot of what you write, because the bottom line is making a thing that talks to the database.

"P" is important, but it should be called "L" for language. You don't want to be wiritng shit in PHP. Just no. Trust me. Use literally anything else. Python, Node.js, Go, Ruby I don't give a fuck just don't use PHP for god's sake.

Pick database first. Pick language second. Host your shit with Apache or Nginx because it doesn't matter. Run your shit in linux (I reccommend alpine for a webserver OS). Meme "stacks" are for Pajeets that can't do anything without being told every single solitary command and line-of-code they need to enter.

Linux, nginx, PostgreSQL, whatever. LNPX. Don't use Apache in 4 CYE, Jesus.

the only good part
>import("datetime").date.today().year
lol
LOL
LOL

Maybe ten years ago. Now I use nginx instead of apache, PostgreSQL instead of mysql, and not php.

You inspired in me a mighty kek, friend. Thank you.

MediaWiki isn't the only wiki software out there. en.wikipedia.org/wiki/Comparison_of_wiki_software

If you just "want to fuck around" or "mess around" with a "low resource wiki", there are probably better options.


Why the fuck would you go off on some random tangent about LAMP that doesn't even answer OP's question?

Besides, BCHS is the superior paradigm. learnbchs.org/

hahahahahahahahahahahaha
SQLite is not the superior database engine

Attached: 2aca2f05e3aae3fe9010a711b015913e2c3926e52523b72034a0d3974047e2d9.gif (500x455, 479.05K)

wew. That thing's a pile of shit and serializes all writes. It's barely usable for embedded use, I can't imagine making a real site with it. I use it on our embedded products only because I can't fit a real database and you have to baby that shit like mad to keep it from corrupting everything or bloating the WAL log until it crashes. "guess the number of pragmas" is a fun game.
wew*2. That thing's a joke, a proof of concept at best that is tightly tied to OpenBSD. microhttpd is way better (I use it) and portable. The API's a little wonky and will take some reading but there is a path through it that lets it be completely modern (think OpenGL where you have to avoid all the pitfalls). The BSDfags won't touch it because of the license, though. Autism extreme.
No. I do this for our embedded boxes only because I don't have room for libstdc++. But it's hell with only gcc's attribute((cleanup)) and goto to help keep the code from ballooning or leaking; it's easily double the code to manage compared to a C++ version. If you can fit libstdc++, use C++. You can also risk not using libstdc++ but from experience they'll eventually tie something to it that you were using and your code will break.
ahaha no. Why would anyone use a shitty non-portable Linux clone that is 10 years behind on hardware support and still has trouble with basic things like multicore.

OpenBSD is not a linux clone you imbecile. It is a NetBSD fork.
And NetBSD is based off of 4.3BSD.

OpenBSD is a meme
default FS doesn't even support SSD TRIM, and OpenBSD doesn't support anything modern like ZFS or BTRFS.
In the CIA triad of Confidentiality, Integrity, and Availability, availability seems to be the one that's lacking. Who cares how hack-resistant your system is if the data you're protecting is corrupted?
That's not even getting into the volume management stuff that's missing, and the snapshots, and the everything.
"b-b-but MUH BACKUPS!!"
What are you even saying? That bitrot all of a sudden doesn't exist anymore? That backups are the one and only thing you should do and should not be supplemented by a more stable filesystem?
You do realize that if the filesystem is not secure and does not protect against bitrot and corruption, your precious backups are going to be fucked, because you'll be backing up corrupted data. Who even knows how far you'll have to roll back in order to get to a clean state?
"Only two remote holes in the default install!!!!!!!"
Yay!
I hope you realize that this literally only applies to a base system install with absolutely no packages added. In other words, not exactly representative or meaningful towards... anything really
A few years ago, OpenBSD was actually in danger of shutting down because they couldn't keep the fucking lights on. How could anyone see this as a system they could rely on, when it could be in danger of ending at any time?
"B-But OpenBSD is written in strictly standards-compliant C! Clearly that's better than muh GNU virus!"
So you're not allowed to create extensions to the standard? You should only implement the standard and nothing more? Keep in mind that this is nothing like EEE, as the GNU extensions are Free Software, with freely available source code, as opposed to proprietary shite. People should be allowed to innovate and improve things.
If you're gonna be anal about standards-compliance, then why let people make their own implementations anyway? Why not have the standards organizations make one C implementation and force everyone to use it?

TRIM when?
ZFS when?
Multicore firewall when?
NFSv4 when?

Let's go into those:
TRIM is vital to properly supporting SSDs. Without it, deleting a few pages from the storage would require the deletion of the entire block before putting it all back, creating unnecessary reads and writes and ultimately causing a faster degradation of the SSD.
ZFS, and other filesystems like it, provide numerous features both for better management of your data with subvolumes, as well as better security. The security features include snapshotting, checksumming of all data and metadata, bitrot protection, excellent implementation of software RAID, and so on. Backups should of course always be made, but they can be complimented with a better FS. I can just imagine it now: An OpenBSD admin routinely backing up his system, unaware that data is being silently corrupted. By the time it's a problem, it's too late. Imagine how far back he'd have to roll back to get to a stable state? If only he had a filesystem that wasn't written in the 80s, and actually did something to protect his data. OpenBSD has best security? I think not.
PF, at least on OpenBSD, does not support more than one core of one processor. Linux's netfilter on the other hand, does. Not much else to say.
It's been 18 years since NFSv4 was originally standardized, and OpenBSD has still not gotten around to implementing it. This is quite a deficiency, as NFSv4 now allows you to authenticate connections with Kerberos, and even encrypt the data transfers. Once again, you would think such a security-focused OS would care about such benefits, but alas, no.

They liberally lift modern design from Linux. They've not been NetBSD for a long time, user. They get very angry when that's pointed out, so point it out a lot.

Nice pasta. Zig Forums needs IDs and mods who ban shills like yourself.

The dlang forum uses sqlite and is incredibly fast. A database server is overkill for 99% of websites but webdevs love to overcomplicate things.

sqlite is not incredibly fast. It literally serializes every write transaction. To stay sane (sqlite has a lock inversion problem by default), devs use IMMEDIATE mode transactions which lock the db for writes from the BEGIN to the COMMIT. The write performance is total ass.
There's no reason to use it over something like PostgreSQL if you can fit PostgreSQL in. sqlite's niche is those places PostgreSQL doesn't fit, like in Android apps, embedded systems, desktop apps, etc.. In something that might need to scale in the future like a website, it would be a huge mistake.

99% of websites just require reads, not writes, so your point is moot.
You just want to shit on something for reasons that don't apply to what is being discussed.

It's no surprise to me that you hang out in toy language communities.

99% of websites aren't forums.

You brought up a fucking forum as your example of 'incredibly fast' you niggermonkey.

I'm not whoever you think I am,


are me.

imo it's just a lack of understanding of the tech and why it's unsafe and doesn't scale.
Example: with sqlite, it mmaps the database so any errant pointer can potentially completely destroy your data on disk. It tries to protect this with an 80% solution of mprotecting all the pages then unprotecting the ones it's working on as needed (this is why it's so heavy on syscalls). That only lessens the odds of losing everything, it's not a fix. If you're using it in a language that isn't bounds checked, as is usually the case with stand-alone apps using libsqlite, and you haven't built a message-passing system to execute queries in a separate process and serialize the result back to the caller (I feel like I'm the only person to have ever done this), you're playing with fire.
As another example, libsqlite blocks and can't be trivially converted to network-style non-blocking like libpq as it's filesystem-based. If you're writing something that needs to be responsive and not choke when the disk is being used by something else, you have to build the message passing system I mentioned above along with your own system of futures. The only libraries for this I know of are from webdevs in webdev languages, you'll have to write your own for standalone apps using libsqlite. Note that asyncvfs is not a solution, if you don't know why, read about it until you do.
It's deeply into mistake territory to use it when you could have used PostgreSQL.

Ah, so you're retarded.

Defend vmd. Tell me lies about how you'd use it for real servers. And are they still unable to use OpenCL/CUDA? It's pretty funny that a "security focused" OS can't even run hashcat. It must hurt their butts that they need a Linux box to verify user password strengths. They probably just don't bother..
It barely works even on a regular x86 desktop as it has so few drivers. See above.
Oh it's totally not a clone as sosplice() is different than splice(). And vmd is different than KVM. And O_CLOEXEC is different than O_CLOEXEC (b-but that was later standardized by POSIX so it's ok). And virtio is different than virtio (b-but that was later standardized by OASIS so it's ok). And QoS is totally different and algorithms like CoDel weren't copied from Linux many years later.
They're innovators in the OS space and in no way owe all modern features to copying from Linux. I'm sure when they get around to cloning ebtables it will be the most innovative clone yet.